Listing of file='SHOOT.BAS;01' on disk='vmedia/shoot-sector.ccvf'
100 REM FOR COMPUCOLOR II MOD FEB 1,80 110 REM COPYRIGHT (C) 1978 BY COMPUCOLOR CORPORTATION 120 REM WRITTEN BY A.W. GROGONO 130 OUT 8,255:OUT 8,247:TM= 256* PEEK (32941)+ PEEK (32940) 140 Z= TM+ 8:AD= 33283:GOSUB 200:TM= TM+ 1 150 GOTO 210 160 Y1= 5:H= 10:W= 14:C1= 1 170 Z= 28672+ 128* Y1+ X1+ X1:AD= TM+ 126:GOSUB 200 180 Z= 128- W- W:AD= TM+ 149:GOSUB 200:POKE TM+ 129,H- 1 190 POKE TM+ 131,W* (C1+ 1):POKE TM+ 143,35* (1- C1):RETURN 200 ZZ= INT (Z/ 256):POKE AD,Z- 256* ZZ:POKE AD+ 1,ZZ:RETURN 210 DIM H(159),X0(1),SC(1) 220 PLOT 6,2,12,29,27,24,15,12 230 XX= RND (- PEEK (33209)) 240 PLOT 12,15 250 YH= 90* RND (1) 260 LH= 4* INT (10* RND (1)+ 1) 270 RH= 4* INT (10* RND (1)+ 1) 280 WH= 4+ 12* RND (1) 290 XH= 55.5+ 16* RND (1) 300 G= .1 310 WF= .003 320 VW= 20* RND (1)- 10:GOTO 390 330 A= XH/ WH:B= 1/ WH:C= LH/ YH:D= RH/ YH 340 PLOT 6,2,2,246,0:FOR I= 1TO 127:J= A- I* B:Y= YH* EXP (- J* J) 350 IF I> XHTHEN H(I)= RH+ Y- Y* D:GOTO 370 360 H(I)= LH+ Y- Y* C 370 XX= RND (- PEEK (33209)) 380 PLOT I,H(I):NEXT :PLOT 255:GOTO 560 390 PLOT 3,27,0 400 PRINT "WIND ";INT (4* ABS (VW)+ .5) 410 PLOT 3,27,1 420 IF VW> 0THEN 440 430 PRINT "<------":VW$= "LEFT":GOTO 450 440 PRINT "------>":VW$= "RIGHT":GOTO 450 450 PLOT 3,27,2:PRINT "TO "VW$ 460 FOR P= - 1TO 1STEP 2:C= 19.5+ 2.5* P 470 X((P+ 1)/ 2)= XH+ P* (WH+ 32+ 10* RND (1)) 480 PLOT 30,C,29,C 490 PLOT 30,16,29 500 PLOT 3,25+ 25* P,1 510 PRINT "PLAYER "(P+ 3)/ 2 520 PLOT 3,25+ 25* P,2 530 PRINT "SCORE: "SC((P+ 1)/ 2) 540 PLOT 3,25+ 25* P,4 550 PRINT "ANGLE/BAGS":NEXT :GOTO 330 560 P= 2* INT (2* RND (1))- 1 570 FOR X= 1TO 2:GOSUB 1070:P= - P:NEXT X 580 T= .5 590 L= 0:P= - P:GOSUB 1030 600 GOSUB 1070 610 PLOT 19.5+ 2.5* P 620 L= 0:GOSUB 1010 630 L= 2+ LEN (I$) 640 E= VAL (I$) 650 IF E< 0THEN 1020 660 GOSUB 1010 670 VI= VAL (I$)/ 2 675 IF VI< 0THEN P= - P:T= T- .5:GOTO 590 680 R= (E- 90)* P/ 57.2958 690 VX= VI* SIN (R) 700 VY= VI* COS (R) 710 X= X((P+ 1)/ 2):Y= H(X((P+ 1)/ 2)) 720 Y= INT (Y/ 4)* 4+ 4 730 X0= X:Y0= Y 740 PLOT 30,2 750 IF Y< 0THEN 890 760 IF X< 1OR X> 127THEN 890 770 IF Y> 115THEN 800 780 OUT 7,64 790 PLOT X,Y,X0,Y0:X0= X:Y0= Y 800 VX= VX+ (VW- VX)* WF:VY= VY- G:X= X+ VX:Y= Y+ VY 810 IF X< 1OR X> 127THEN 890 820 IF Y> H(X)THEN 750 830 OUT 7,64 840 X= X+ VX* (H(X)- Y)/ VY 850 X= INT (X):IF X> 127THEN X= 127 860 IF X< 1THEN X= 1 870 Y= H(X) 880 PLOT X0,Y0,X,Y 890 PLOT 255,30,16,29 900 IF INT (X((1- P)/ 2)/ 2)< > INT (X/ 2)THEN 590 910 OUT 7,64 920 Z= 0:PLOT 14,17 930 XX= INT ((X+ Z)/ 2)- 3:IF XX< 0OR XX> 54THEN Z= Z+ P:GOTO 930 935 IF Y> 117THEN Y= 117 940 PLOT 3,XX,29- INT (Y/ 4+ .5) 950 PRINT "KA-POW-EE" 960 PLOT 3,INT (X/ 2),29- INT (Y/ 4+ .5) 970 PLOT 10:PRINT "\*/" 980 OUT 7,64:PLOT 3,80,0 990 SC((P+ 1)/ 2)= SC((P+ 1)/ 2)+ 1 1000 FOR Z= 1TO 2000:NEXT :GOTO 240 1010 PLOT 3,L+ 25+ 25* P,4+ INT (T):OUT 8,255:INPUT "";I$:OUT 8,247:RETURN 1020 OUT 8,255:PLOT 6,2,12,1 1030 X1= L+ 25+ 25* P:GOSUB 160 1040 T= T+ .5:IF INT (T)= 6THEN ZZ= CALL (1):T= 5.5 1050 GOSUB 1060:PRINT SPC( 15)"" 1060 PLOT 3,L+ 25+ 25* P,4+ INT (T):RETURN 1070 C= 19.5+ 2.5* - P 1080 PLOT 30,C,29,C 1090 PLOT 2,X((- P+ 1)/ 2),H(X((- P+ 1)/ 2)),255 1100 PLOT 30,16,29:RETURN