This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page,
please contact me immediatelly so I can remove it!
|
|
|
-
Entry name:Strikes 'N' Spares
-
Category:Games
-
Publisher/Developer:BELLCOM - Public Domain Library
Listing 1
2 REM BY: STEVE SMITH 3 REM 7516 BURKE ST., NE 4 REM ALBUQUERQUE, NM 87109 5 REM 50 DIM Q$(1),BY$(3),PIN(10),W$(16),V$(50),C$(1),G(2,7),P1$(7),P2$(7):O=8:RED=74:BLUE=106:CP=1:F=1 60 V$="15117153151531915513155171552115711157151571915723":POKE 711,0 70 G(1,7)=999:G(2,7)=999:POF=1280:BOF=1024:PU=348:BU=373:BH=53248:PH=53249:I=10 90 POKE 709,RED:POKE 710,BLUE:GOSUB 9000:GOSUB 8000:GOTO 1000 100 REM 105 POKE 705,CL:POKE 704,CL:POKE BH,BX:POKE PH,PX:FOR SO=50 TO 0 STEP -1:SOUND 0,SO,14,I:NEXT SO:POKE 77,0 110 SOUND 0,0,0,0:J=PB+POF:B=PB+BOF:S=STICK(CP-1):FI=STRIG(CP-1):IF FI=0 THEN 140 112 IF S<>13 AND S<>14 THEN 110 114 IF S=14 AND PY-1>32 THEN PY=PY-1 116 IF S=13 AND PY+1<76 THEN PY=PY+1 120 D=USR(PU,J+PY,278):D=USR(BU,B+PY+1,332):SOUND 0,250,O,I:GOTO 110 140 IF S=5 OR S=6 THEN S=7 150 IF S=9 OR S=10 THEN S=11 300 REM 305 OS=0:RH=INT(RND(0)*10):HP=185+INT(RH) 310 D=USR(PU,PB+POF+PY,314):D=USR(BU,PB+BOF+PY+1,340):D=USR(BU,PB+BOF+PY+7,332):BX=BX+1:PX=PX+1 320 POKE BH,BX:POKE PH,PX:FOR L=1 TO 30:NEXT L 330 BX=BX-9:PX=PX+3:D=USR(PU,PB+POF+PY,296):POKE BH,BX:POKE PH,PX:FOR L=1 TO 30:NEXT L 340 BX=BX+12:PX=PX+1:D=USR(PU,PB+POF+PY,314):POKE BH,BX:POKE PH,PX:FOR L=1 TO 30:NEXT L 345 D=USR(PU,PB+POF+PY,278):FOR L=1 TO 30:NEXT L 350 D=USR(BU,PB+BOF+PY+7,340):D=USR(BU,PB+BOF+PY+I,332):PX=PX+1:POKE PH,PX:YB=PY+I 355 SOUND 3,220,8,8:FOR B=BX TO 200:POKE BH,B:IF (S=7 OR S=11) AND B>=HP THEN OS=0.5:IF S=11 THEN OS=-0.5 356 IF YB+OS>85 OR YB+OS<43 THEN 358 357 IF OS<>0 THEN D=USR(BU,PB+BOF+YB,340):D=USR(BU,PB+BOF+YB+OS,332):YB=YB+OS 358 IF B=185 THEN YB=INT(YB):YR=YB 359 NEXT B:SOUND 3,0,0,0:POKE BH,20 360 IF YB>48 AND YB<79 THEN 400 370 IF T=0 THEN B1=0:GOTO 490 380 IF T=1 THEN B2=0:GOTO 490 400 REM 401 COLOR 1:RN=INT(RND(0)*I):NO=0:RV=411+YR-48 403 IF S=11 THEN RV=503+YR-51:IF RN>4 THEN RV=503+YR-21 404 IF S=7 THEN RV=603+YR-51:IF RN>4 THEN RV=603+YR-21 405 RESTORE RV 406 SOUND 1,0,0,0:READ V:U=V*5-4:IF V=99 THEN RE=INT(RND(0)*2):IF RE=1 THEN 410 407 IF V=99 THEN 475 408 IF PIN(V)=1 THEN 406 409 VX=VAL(V$(U,U+2)):VY=VAL(V$(U+3,U+4)):PLOT VX,VY:DRAWTO VX+1,VY:PIN(V)=1:SOUND 1,V*I,14,15:NO=NO+1:GOTO 406 410 IF S<>7 AND S<>11 AND NO=8 THEN RESTORE 416:GOTO 406 411 IF S<>7 AND S<>11 AND NO=9 THEN RESTORE 440:GOTO 406 412 IF S=11 AND NO=9 THEN RESTORE 560:GOTO 406 413 IF S=7 AND NO=9 THEN RESTORE 535:GOTO 406 414 GOTO 475 415 REM 416 DATA 7,99 420 DATA 4,7,8,99 424 DATA 2,4,8,99 428 DATA 1,2,3,4,5,6,8,9,99 432 DATA 3,6,9,99 436 DATA 6,9,10,99 441 DATA 10,99 475 IF T=0 THEN B1=NO 480 IF T>0 THEN B2=NO 490 GOSUB 800:GOSUB 700:BX=54:PX=49:RETURN 500 REM 505 DATA 7,8,99 509 DATA 4,7,99 513 DATA 2,4,7,8,99 517 DATA 1,2,3,4,5,6,8,9,10,99 521 DATA 3,5,9,10,99 525 DATA 6,10,99 530 DATA 10,9,99 535 DATA 7,99 539 DATA 4,7,99 543 DATA 2,4,7,99 547 DATA 1,2,5,7,8,99 551 DATA 3,6,10,99 555 DATA 6,10,99 560 DATA 10,99 600 REM 605 DATA 7,8,99 609 DATA 4,7,8,99 613 DATA 2,4,5,8,9,99 617 DATA 1,2,3,4,5,6,7,8,9,99 621 DATA 3,6,8,9,99 625 DATA 6,8,9,99 629 DATA 10,9,99 635 DATA 7,8,99 639 DATA 4,7,8,99 643 DATA 2,4,7,99 647 DATA 1,2,5,8,99 651 DATA 3,6,9,99 655 DATA 6,10,99 660 DATA 10,9,99 700 POKE PH,20:D=USR(PU,PB+POF+PY,260):PY=59:D=USR(PU,PB+POF+PY,278) 710 D=USR(BU,PB+BOF+YB,340):D=USR(BU,PB+BOF+PY+1,332):RETURN 800 REM 820 SX=29:XX=3:IF CP=2 THEN SX=115:XX=12 830 IF T=0 AND B1=I THEN W$="X":GOSUB 990:T=1:GOTO 870:REM STRIKE 840 IF T=0 AND B1<I THEN W$=STR$(B1):GOSUB 990:GOTO 942:REM MARK 850 IF T=1 AND B1<>I AND B1+B2=I THEN W$="/":GOSUB 990:GOTO 910:REM SPARE 860 IF T=1 AND B1+B2<I THEN W$=STR$(B1+B2):GOSUB 990:GOTO 940:REM MARK 865 GOTO 945 870 REM 880 IF G(CP,2)=I AND G(CP,3)=I THEN G(CP,1)=G(CP,1)+30:GOTO 945 890 IF G(CP,3)=11 THEN G(CP,1)=G(CP,1)+20:GOTO 945 900 GOTO 960 910 REM 925 IF G(CP,3)=I THEN G(CP,1)=G(CP,1)+20:GOTO 945 927 GOTO 960 930 REM 940 IF G(CP,3)=I THEN G(CP,1)=G(CP,1)+B1+B2+I 941 G(CP,1)=G(CP,1)+B1+B2:GOTO 945 942 IF G(CP,3)=11 THEN G(CP,1)=G(CP,1)+B1+I:GOTO 945 943 IF G(CP,3)=I AND G(CP,2)=I THEN G(CP,1)=G(CP,1)+B1+20:GOTO 945 944 IF T=0 THEN RETURN 945 REM 950 X=SX:Y=66:COLOR 0:FOR BL=Y TO Y+7:PLOT X,BL:DRAWTO X+25,BL:NEXT BL:W$=STR$(G(CP,1)) 952 FOR J=1 TO LEN(W$):C=ASC(W$(J,J)):A=USR(1536,C,CP+1,XX+J,Y):NEXT J 955 IF T=0 AND B1<>I THEN 962 960 G(CP,2)=G(CP,3):G(CP,3)=B1+B2 962 IF T=1 AND B1<>I AND B1+B2=I THEN G(CP,3)=11 965 RETURN 990 X=F-1:Y=77:IF CP=2 THEN Y=87 992 IF F>1 THEN X=X*2 995 C=ASC(W$):A=USR(1536,C,CP+1,X,Y):RETURN 1000 REM 1010 IF F>9 THEN 1060 1020 IF CP=1 THEN CL=RED:GOSUB 100:GOTO 1040 1030 CL=BLUE:GOSUB 100 1040 T=T+1:IF T=2 THEN T=0:GOSUB 8800:IF NP=2 THEN CP=CP+1:IF CP=3 THEN CP=1 1045 IF T=0 AND CP=1 THEN F=F+1 1050 GOTO 1000 1060 CL=RED 1065 T=0:IF F>I AND G(CP,3)<I THEN 1100 1070 IF F=I THEN GOSUB 100:T=1:IF B1<>I THEN GOSUB 100 1072 IF F=I THEN GOSUB 8800:F=11:GOTO 1065 1075 IF G(CP,3)=11 THEN F1=F:F=10:GOSUB 100:GOTO 1100 1080 IF G(CP,3)=I THEN F1=F:F=10:GOSUB 100:T=1:IF B1<>I THEN GOSUB 100 1090 F=F1+1:IF F<13 THEN GOSUB 8800:GOTO 1065 1100 IF NP=2 THEN CP=CP+1:IF CP<3 THEN F=I:CL=BLUE:GOSUB 8800:GOTO 1065 2000 REM 2010 P1C=PEEK(709):P2C=PEEK(710):FC=PEEK(712):G(1,4)=G(1,4)+G(1,1):G(2,4)=G(2,4)+G(2,1):FOR J=1 TO 5 2015 IF G(1,1)>G(2,1) THEN POKE 709,FC 2020 IF G(2,1)>G(1,1) THEN POKE 710,FC 2030 IF G(1,1)=G(2,1) THEN POKE 709,FC:POKE 710,FC 2040 FOR L=1 TO 100:NEXT L:POKE 709,P1C:POKE 710,P2C:FOR L=225 TO I STEP -2:SOUND 2,L,8,I:NEXT L:SOUND 2,0,0,0 2050 NEXT J:G(1,5)=G(1,5)+1:IF NP=2 THEN G(2,5)=G(2,5)+1 2060 IF G(1,1)>G(1,6) THEN G(1,6)=G(1,1) 2070 IF G(1,1)<G(1,7) THEN G(1,7)=G(1,1) 2080 IF G(2,1)<G(2,7) THEN G(2,7)=G(2,1) 2090 IF G(2,1)>G(2,6) THEN G(2,6)=G(2,1) 2100 FOR L=1 TO 3:G(1,L)=0:G(2,L)=0:NEXT L 2110 GOSUB 700 2200 GRAPHICS 0:POSITION 11,1:? "NO. TOTAL HIGH LOW":POSITION 2,2:? "BOWLER GAMES PINS AVG GAME GAME" 2210 POSITION 2,5:? P1$:POSITION 11,5:? G(1,5):POSITION 16,5:? G(1,4) 2215 POSITION 23,5:? INT(G(1,4)/G(1,5)):POSITION 28,5:? G(1,6):POSITION 33,5:? G(1,7):IF NP=1 THEN 2230 2220 POSITION 2,7:? P2$:POSITION 11,7:? G(2,5):POSITION 16,7:? G(2,4) 2225 POSITION 23,7:? INT(G(2,4)/G(2,5)):POSITION 28,7:? G(2,6):POSITION 33,7:? G(2,7) 2230 POSITION I,I:? "ANOTHER GAME (Y/N) ";:INPUT Q$:IF Q$<>"Y" AND Q$<>"N" THEN 2230 2240 IF Q$="N" THEN ? CHR$(125):END 2290 T=0:F=1:F1=0:CP=1:GOSUB 9100:GOSUB 8000:GOTO 1000 8000 REM 8010 COLOR 1:PLOT 159,50:DRAWTO 159,0:DRAWTO 0,0:POKE 765,1:POSITION 0,50:XIO 18,#6,0,0,"S" 8020 COLOR 0:FOR L=5 TO 8:PLOT 15,L:DRAWTO 159,L:NEXT L:FOR L=26 TO 29:PLOT 15,L:DRAWTO 159,L:NEXT L 8040 W$="STRIKES N SPARES":R=1:FOR J=1 TO LEN(W$):C=ASC(W$(J,J)):A=USR(1536,C,R,J+1,42):R=R+1:IF R=4 THEN R=1 8045 NEXT J 8050 GOSUB 8800:COLOR 1:PLOT 0,64:DRAWTO 159,64:PLOT 78,51:DRAWTO 78,74:PLOT 79,51:DRAWTO 79,74 8060 PLOT 0,75:DRAWTO 159,75:PLOT 0,86:DRAWTO 159,86 8070 FOR L=12 TO 144 STEP 16:PLOT L,75:DRAWTO L,85:NEXT L 8075 IF NP=2 THEN FOR L=12 TO 144 STEP 16:PLOT L,86:DRAWTO L,95:NEXT L:PLOT 0,95:DRAWTO 159,95 8080 W$=P1$:FOR J=1 TO LEN(W$):C=ASC(W$(J,J)):A=USR(1536,C,2,J+1,54):NEXT J 8085 IF NP=2 THEN W$=P2$:FOR J=1 TO LEN(W$):C=ASC(W$(J,J)):A=USR(1536,C,3,J+11,54):NEXT J 8099 BX=54:PX=49:RETURN 8800 REM SETUP ALL PINS 8810 COLOR 0:FOR V=1 TO I:U=V*5-4:VX=VAL(V$(U,U+2)):VY=VAL(V$(U+3,U+4)):SOUND 1,V*I,I,I:PLOT VX,VY:DRAWTO VX+1,VY 8820 SOUND 1,0,0,0:NEXT V:B1=0:B2=0 8830 FOR L=1 TO I:PIN(L)=0:NEXT L:RETURN 9000 REM 9005 FOR L=1 TO 6:G(1,L)=0:G(2,L)=0:NEXT L 9010 GRAPHICS 0:RESTORE 9015:FOR A=348 TO 372:READ J:POKE A,J:NEXT A 9015 DATA 104,104,133,204,104,133,203,104,133,207,104,133,206,160,0,177,206,145,203,200,192,18,208,247,96 9016 FOR A=373 TO 397:POKE A,PEEK(A-25):NEXT A:POKE 394,8 9020 ? CHR$(125):POSITION 10,5:? " '' ":POSITION 1,7:? "A BOWLING GAME FOR ONE OR TWO PLAYERS" 9030 POSITION 1,10:? "HOW MANY PLAYERS (1 OR 2) "; 9040 INPUT NP:IF NP<1 OR NP>2 THEN 9020 9050 POSITION 1,12:? "ENTER BOWLER #1 NAME (MAX 7) ";:INPUT P1$:IF LEN(P1$)<1 OR LEN(P1$)>7 THEN 9000 9055 IF NP=1 THEN 9080 9060 POSITION 1,14:? "ENTER BOWLER #2 NAME (MAX 7) ";:INPUT P2$:IF LEN(P2$)<1 OR LEN(P2$)>7 THEN RUN 9070 POSITION 1,16:? P1$;"'S BOWLER IS RED (TOP LINE)":POSITION 1,17:? P2$;"'S BOWLER IS BLUE (BOTTOM LINE)" 9080 POSITION 1,19:? "PRESS THE KEY TO BEGIN THE GAME ";:POKE 53279,0 9090 IF PEEK(53279)<>6 THEN 9090 9100 REM 9110 GRAPHICS 23:POKE 708,30:POKE 709,RED:POKE 710,BLUE:COLOR 1:PLOT 45,0:DRAWTO 115,95:PLOT 115,0:DRAWTO 45,95 9112 PLOT 33,46:DRAWTO 40,38:PLOT 40,46:DRAWTO 33,38:PLOT 120,46:DRAWTO 127,38:PLOT 127,46:DRAWTO 120,38 9113 PLOT 78,79:DRAWTO 85,72:PLOT 78,22:DRAWTO 85,15 9117 RESTORE 9150:FOR L=260 TO 347:READ J:POKE L,J:NEXT L 9120 PY=59:A=PEEK(106)-32:POKE 54279,A:PB=256*A:POKE 559,62:POKE 53277,3:POKE 53256,0:POKE 623,1 9130 FOR J=PB+BOF TO PB+1535:POKE J,0:SOUND 2,J-1024,2,6:NEXT J:SOUND 2,0,0,0:POKE PH,20 9135 R=0:FOR L=PB+POF+PY TO PB+1297+PY:POKE L,PEEK(278+R):R=R+1:NEXT L 9140 R=0:FOR L=PB+BOF+PY+1 TO PB+1031+PY+1:POKE L,PEEK(332+R):R=R+1:NEXT L:? #6;CHR$(125) 9145 RESTORE 9200:FOR L=0 TO 252:READ J:POKE 1536+L,J:POKE 712,L:SOUND 2,L,14,6:NEXT L:SOUND 2,0,0,0:POKE 712,0:RETURN 9150 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 9155 DATA 0,120,248,252,248,112,249,254,248,248,248,248,220,204,204,204,238,0 9160 DATA 0,30,62,63,62,28,62,62,62,126,190,62,54,54,246,246,135,0 9170 DATA 0,120,248,252,248,112,248,248,248,252,250,249,216,216,204,204,238,0 9180 DATA 0,14,31,31,31,31,14,0,0,0,0,0,0,0,0,0 9200 DATA 104,240,10,201,4,240,11,170,104,104,202,208,251,169,253,76,164,246,104,133,195,104,201,128 9210 DATA 144,4,41,127,198,195,170,141,250,6,224,96,176,15,169,64,224,32,144,2,169,224,24,109,250,6,141,250,6,104 9220 DATA 104,141,251,6,104,104,141,252,6,14,252,6,104,104,141,253,6,133,186,166,87,169,10,224,3,240,8,169,20,224 9230 DATA 5,240,2,169,40,133,207,133,187,165,88,133,203,165,89,133,204,32,228,6,24,173,252,6,101,203,133,203,144,2 9240 DATA 230,204,24,165,203,101,212,133,203,165,204,101,213,133,204,173,250,6,133,187,169,8,133,186,32,228,6,165 9250 DATA 212,133,205,173,244,2,101,213,133,206,160,0,162,8,169,0,133,208,133,209,177,205,69,195,72,104,10,72,144 9260 DATA 8,24,173,251,6,5,208,133,208,224,1,240,8,6,208,38,209,6,208,38,209,202,208,228,104,152,72,160,0,165,209 9270 DATA 145,203,200,165,208,145,203,104,168,24,165,203,101,207,133,203,144,2,230,204,200,192,8,208,183,96 9280 DATA 169,0,133,212,162,8,70,186,144,3,24,101,187,106,102,212,202,208,243,133,213,96,0,1,28 9999 END
References
Listing downloads
Downloads
Copyright holder
