5 REM 64 SHUFFLE *** BUCK CHILDRESS 10 REM P.O. BOX 2072, WHITE CITY, OR 97503 15 PRINT"[147]SETTING UP...PLEASE WAIT" 20 PRINT"APPROXIMATELY 30 SECONDS" 25 POKE52,48:POKE56,48:CLR:GOSUB700 30 INPUT"[147]HOW MANY PLAYERS (1-2)";NP:PRINT"[147]" 40 IFNP<>1ANDNP<>2THEN30 50 Y2=56321:IFNP=2THENY2=56320 60 DIME(6):DIMJ(6):DIMP(6):DIMU(6):E=84:U=6:C=54272 70 SO=49152:PL=1464:A=1:Y1=56321:Y=Y1:POKE53280,12 80 POKE53281,3:GOSUB800:GT=1:GOSUB470:GT=0 100 REM ************ HANDLING ROUTINE ************ 110 M=0:F=0:POKEPL,85:POKEPL+C,U 115 GETA$:FB=PEEK(Y)AND16:IFFB=0ANDH=0THENH=1:TS=TI 120 IFA$="R"THENCLR:POKE198,0:GOTO30 125 IFH1=0THENIFFB=16ANDH=1THENTF=TI:H1=1 130 R=PEEK(Y)AND8:IFR=0THENGOSUB230 135 L=PEEK(Y)AND4:IFL=0THENGOSUB200 140 JS=PEEK(Y)AND1 145 IFJS=0ANDH=1ANDFB>0THENH=0:H1=0:D=D+1:P(D)=INT((TF-TS)/6):GOTO160 150 GOTO115 160 X=X+1:POKEPL,86:POKEPL+C,U:IFP(D)>28THENP(D)=38-D 170 B=PL+P(D):FORJ=PL+1TOB:M=M+1:F=F+1:POKEJ,E:POKEJ+C,U 175 IFPEEK(J+1)=83ORPEEK(J+1)=84THENGOSUB650:GOSUB300:GOTO100 180 FORJJ=1TO40:NEXT:POKEJ,32:NEXT:POKEJ,E 185 POKEJ+C,U:P(D)=M-1:IFP(D)>28THENGOSUB600 190 GOSUB400:GOTO100 200 REM ********** PLAYER MOVEMENT ********** 210 IFPL>1305THENPOKEPL,32:PL=PL-40:POKEPL,85:POKEPL+C,U 220 RETURN 230 IFPL<1585THENPOKEPL,32:PL=PL+40:POKEPL,85:POKEPL+C,U 240 RETURN 300 REM ********** PUCK COLLISIONS ********** 305 IFPEEK(J)<>PEEK(J+1)THENT=T+1:IFT>1THEN375 310 FORI=1TO6:IFJ(I)=J+1THEN320 315 NEXT 320 FORJ1=J+1TOB:POKEJ1,E(I):POKEJ1+C,U(I) 325 IFPEEK(J1+1)=83ORPEEK(J1+1)=84THEN345 330 FORJJ=1TO60:NEXT:POKEJ1,32:F=F+1:NEXT:POKEJ1,E(I):POKEJ1+C,U(I) 335 P(I)=F-1:P(D)=M-2:J(I)=J1:IFP(I)>28THENGOSUB600 340 GOSUB400:J1=B:J=B:I=6:RETURN 345 IFPEEK(J1)<>PEEK(J1+1)THENT=T+1:IFT>1THENGOSUB650:POKEJ1+C,1:GOTO375 350 GOSUB650:P(I)=F-1:J(I)=J1 355 FORI=1TO6:IFJ(I)=J1+1THEN365 360 NEXT 365 F=F+1:FORJ1=J1+1TOB:POKEJ1,E(I):POKEJ1+C,U(I):GOTO325 375 IFD<4THEND=3:G=1:G1=2 380 IFD>3THEND=6:G=4:G1=5 385 POKEJ+C,1:FORI=GTOG1:POKEJ(I)+C,1:NEXT:GOSUB670:FORJJ=1TO1250:NEXT 390 POKEJ1,32:POKEJ,32:FORI=GTOG1:POKEJ(I),32:NEXT 395 GOSUB415:J1=B:J=B:RETURN 400 REM ********** CHANGING SIDES ********** 405 J(D)=J:E(D)=E:U(D)=U:IFD=3ORD=6THEN415 410 RETURN 415 T=0:X=0:IFD=6THENGOSUB435:A=-A:IFA=-1THENU=6 420 IFD<>3ANDA=1THEN430 425 IFU=6THENU=2:E=83:Y=Y2:RETURN 430 U=6:E=84:Y=Y1:RETURN 435 FORN=1TO1500:NEXT:FORD=1TO6:GOSUB450:POKEJ(D),32:NEXT:D=0 440 LL=0:IFVS>=150ORHS>=150THENIFVS<>HSTHENGOSUB900:GOTO490 445 RETURN 450 REM ********** COUNTING THE SCORE ********** 455 IFPEEK(J(D))=E(D)THENIFP(D)>25ANDP(D)=<28THENSC=25 460 IFPEEK(J(D))=E(D)THENIFP(D)>21ANDP(D)=<25THENSC=10 465 IFPEEK(J(D))=E(D)THENIFP(D)>17ANDP(D)=<21THENSC=5 470 IFE(D)=84ORGT=1THENVS=VS+SC:PRINT"";VS 475 IFE(D)=83ORGT=1THENHS=HS+SC:PRINT""TAB(31)HS 480 IFSC>0THENSC=0:GOSUB500 485 RETURN 490 GETA$:IFA$<>"R"THEN490 495 CLR:POKE198,0:GOTO30 500 REM ********** SCORING BELL ********** 510 IFLL=1THEN530 520 LL=1:FORN=0TO24:POKEC+N,0:NEXT:POKEC+24,15 530 FORN=1TO3:POKEC+1,35:POKEC+5,20:POKEC+6,9 540 POKEC+15,30:POKEC+4,17:FORNN=1TO60:NEXT 550 POKEC+4,16:FORNN=1TO150:NEXT:NEXT:SYSSO:RETURN 600 REM ******* SOUND OF PUCK GOING OUT ******** 610 FORN=0TO24:POKEC+N,0:NEXT:FORN=1TO10:POKEC+1,35 620 POKEC+5,20:POKEC+6,9:POKEC+15,30:POKEC+24,N:NEXT 630 SYSSO:RETURN 650 REM ********** SOUND OF PUCKS HITTING EACH OTHER ********** 655 FORN=0TO24:POKEC+N,0:NEXT:POKEC+1,130:POKEC+5,7 660 POKEC+15,30:POKEC+24,15:POKEC+4,21:FORN=1TO100:NEXT:POKES+4,20 665 SYSSO:RETURN 670 REM ********** SOUND WHEN PUCKS DISAPPEAR ********** 675 FORN=0TO24:POKEC+N,0:NEXT:FORN=1TOX:POKEC+1,240:POKEC+5,9 680 POKEC+15,130:POKEC+24,15:POKEC+4,21:FORNN=1TO200:NEXT 685 POKEC+4,20:NEXT:SYSSO:RETURN 700 REM *** CUSTOM CHARACTERS AND SYS COMMAND (GENTLY TURN OFF SOUND) *** 710 FORN=1TO24:READA:NEXT 720 POKE56334,PEEK(56334)AND254:POKE1,PEEK(1)AND251 730 FORN=0TO2047:POKEN+12288,PEEK(N+53248):NEXT:POKE1,PEEK(1)OR4 740 POKE56334,PEEK(56334)OR1:POKE53272,(PEEK(53272)AND240)OR12 750 FORN=12952TO12983:READA:POKEN,A:NEXT 760 FORN=49152TO49170:READA:POKEN,A:NEXT:RESTORE:RETURN 800 REM ********** PLAYING AREA ********** 810 W=1:FORN=1264TO1283:GOSUB890:NEXT:FORN=1664TO1683:GOSUB890:NEXT 820 W=7:FORN=1284TO1287:GOSUB890:NEXT:FORN=1684TO1687:GOSUB890:NEXT 830 W=5:FORN=1288TO1291:GOSUB890:NEXT:FORN=1688TO1691:GOSUB890:NEXT 840 W=0:FORN=1292TO1294:GOSUB890:NEXT:FORN=1692TO1694:GOSUB890:NEXT 850 W=15:FORN=1295TO1303:GOSUB890:NEXT:FORN=1695TO1703:GOSUB890:NEXT 855 FORN=1343TO1663STEP40:GOSUB890:NEXT 860 PRINT"[144]"TAB(21)"51025OUT" 870 PRINT""TAB(21)"51025OUT" 880 RETURN 890 POKEN,160:POKEN+C,W:RETURN 900 REM ************ VICTORY ************ 910 IFVS>HSTHENPRINT"";VS 920 IFHS>VSTHENPRINT""TAB(31)HS 930 FORN=CTOC+24:POKEN,0:NEXT:FORN=1TO3:POKEC+5,85 940 POKEC+6,85:POKEC+12,85:POKEC+13,85:POKEC+24,15:POKEC+4,33 950 POKEC+11,17:FORW=1TO6:READA1,A2,A3,A4:POKEC+1,A1:POKEC,A2 960 POKEC+8,A3:POKEC+7,A4 970 IFA1=50THENFORJ=1TO200:NEXT 980 FORJ=1TO100:NEXT 990 NEXT:POKEC+4,32:POKEC+11,16:FORJ=1TO500:NEXT 995 RESTORE:SYSSO:NEXT:RETURN 1000 DATA25,30,18,209,33,135,25,30,42,62,31,165,50,60,37,162 1010 DATA42,62,31,165,50,60,37,162,0,60,126,255,255,126,60 1020 DATA0,0,60,126,255,255,126,60,0,16,16,248,184,184,104 1030 DATA40,46,64,64,224,224,240,168,164,163,169,0,133,253,169 1040 DATA212,133,254,160,0,152,145,253,200,192,24,208,249,96