Source Code
3 LET F=1
4 LET Z=0
5 PRINT AT 0,10;"CRICKET";AT 1,10;"\~~\~~\~~\~~\~~\~~\~~"
7 PRINT AT 4,0;"7...FOR NEXT DELIVERY"
8 PRINT AT 7,0;"5...TO STRIKE BALL ON OFF-SLIDE"
9 PRINT AT 10,0;"8...TO STRIKE BALL ON ON-SIDE"
12 PRINT AT 16,0;"LEVEL OF DIFFICULTY? (1-3)"
13 INPUT D
14 IF D<1 OR D>3 THEN GOTO 12
15 IF D=1 THEN LET P=3
16 IF D=2 THEN LET P=1
17 IF D=3 THEN LET P=-1
19 DIM T(2)
20 DIM H$(2,12)
21 LET TT=1
22 FOR O=1 TO 2
23 PRINT AT 16,0;" "
25 PRINT AT 16,0;"WHICH TEAMS DO YOU WANT TO PLAY?"
26 INPUT H$(O)
27 NEXT O
28 LET O=1
31 IF TT=2 THEN LET O=2
32 PRINT AT 18,0;"INNINGS OF ";H$(O)
40 PAUSE 25
50 CLS
65 GOSUB 8505
72 LET RR=0
73 LET SS=0
74 LET W=0
75 LET R=0
76 GOTO 4500
95 LET K=0
100 LET X=19
110 LET Y=15
115 FOR N=1 TO 20
117 PRINT AT X,Y;"*"
120 FOR G=1 TO P
122 NEXT G
125 PRINT AT X,Y;" "
127 LET X=X-1
130 IF N=10 THEN LET Q=INT (RND*5-3)
135 IF N=10 THEN LET Y=Y+Q
140 IF N<>12 AND INKEY$="0" THEN LET N=13
145 IF X<=3 THEN LET X=3
150 IF N=12 AND Y<=15 AND INKEY$="5" THEN GOTO 5001
155 IF N=12 AND Y>=16 AND INKEY$="8" THEN GOTO 5001
160 IF Y<=14 AND N=12 AND INKEY$="8" THEN GOTO 3000
170 IF Y>=16 AND N=12 AND INKEY$="5" THEN GOTO 3000
860 LET TT=2
\n1200 NEXT N
\n1210 IF Y=B THEN GOTO 1300
\n1220 IF Y=B+1 THEN GOTO 1300
\n1250 GOTO 4500
\n1300 PRINT AT 13,13;"BOWLED"
\n1303 GOSUB 8555
\n1305 PRINT AT 13,13;" "
\n1308 GOTO 6095
\n2000 LET K=INT (RND*2)+1
\n2010 IF K=1 THEN GOTO 2200
\n2020 IF K=2 THEN GOTO 2050
\n2050 GOSUB 8555
\n2060 PRINT AT 13,13;"DROPPED"
\n2070 PAUSE 25
\n2080 PRINT AT 13,13;" "
\n2090 GOTO 6095
\n2200 PRINT AT 13,13;"CAUGHT"
\n2210 GOSUB 8555
\n2220 PRINT AT 13,13;" "
\n2250 GOTO 6095
\n3000 PRINT AT 3,15;"*";AT 13,0;"CAUGHT BEHIND"
\n3010 GOSUB 8555
\n3020 PRINT AT 3,15;" ";AT 13,0;" "
\n3035 GOTO 6095
\n4410 GOTO 4500
\n4500 PRINT AT 10,8;" "
\n4501 LET C$=INKEY$
\n4505 INPUT C$
\n4510 IF C$="7" THEN GOTO 85
\n4520 IF C$<>"7" THEN GOTO 4500
\n5000 GOTO 4500
\n5005 LET C=X
\n5006 LET D=Y
\n5007 LET S=INT (RND*15)
\n5008 LET H=INT (RND*4)+1
\n5015 FOR N=1 TO 9
\n5020 IF H=1 THEN GOTO 5100
\n5030 IF H=2 THEN GOTO 5110
\n5040 IF H=3 THEN GOTO 5120
\n5050 IF H=4 THEN GOTO 5130
\n5100 LET D=D-1
\n5102 LET C=C-1
\n5105 GOTO 6000
\n5110 LET D=D-1
\n5112 LET C=C+1
\n5115 GOTO 6000
\n5120 LET D=D+1
\n5122 LET C=C-1
\n5125 GOTO 6000
\n5130 LET D=D+1
\n5135 LET C=C+1
\n6000 IF C=2 AND D=9 THEN GOTO 2000
\n6005 IF C=10 AND D=10 THEN GOTO 2000
\n6010 IF C=0 AND D=20 THEN GOTO 2000
\n6015 IF C=15 AND D=22 THEN GOTO 2000
\n6040 PRINT AT C,D;"*"
\n6045 FOR Q=1 TO 3
\n6046 NEXT Q
\n6047 IF C<=0 THEN LET N=S
\n6048 IF C>=20 THEN LET N=S
\n6049 IF D<=0 THEN LET N=S
\n6050 PRINT AT C,D;" "
\n6055 GOSUB 8525
\n6060 NEXT N
\n6061 IF S>=0 AND S<=3 THEN LET R=1
\n6062 IF S>=4 AND S<=7 THEN LET R=2
\n6063 IF S>=8 AND S<=10 THEN LET R=3
\n6064 IF S>=11 AND S<=13 THEN LET R=4
\n6078 IF S>=14 THEN LET R=6
\n6082 PRINT AT 10,B;R
\n6084 PAUSE 10
\n6086 LET T(O)=T(O)+R
\n6087 LET Z=Z+R
\n6088 LET RR=T(O)
\n6095 PRINT AT 0,1;H$(O)
\n6096 PRINT AT 1,2;T(O)
\n6097 PRINT AT 2,1;"FOR"
\n6098 PRINT AT 3,2;W
\n6099 PRINT AT 10,0;"NO.";R;AT 11,3;Z
\n7000 IF W=10 THEN GOTO 8200
\n7010 GOSUB 8505
\n8000 GOTO 4500
\n8200 CLS
\n8210 PRINT AT 5,5;"ALL OUT"
\n8220 PRINT AT 7,5;H$(O);" SCORED ";T(O)
\n8222 IF O=2 THEN GOTO 8630
\n8250 PRINT AT 10,0;"PRESS ANY KEY FOR NEXT INNINGS"
\n8255 INPUT C
\n8300 CLS
\n8500 GOTO 28
\n8505 PRINT AT 1,15;"O";AT 2,15;"A";AT 0,13;"O";AT 1,13;"A"
\n8510 PRINT AT 4,27;"O";AT 5,27;"A";AT 17,7;"O";AT 18,7;"A"
\n8515 PRINT AT 5,5;"O";AT 6,5;"A";AT 20,14;"O";AT 21,14;"A"
\n8520 LET M=17
\n8521 LET A=5
\n8522 LET B=15
\n8525 PRINT AT A,B;"II";AT 21,B;"II"
\n8530 PRINT AT 7,M;"O";AT 8,M;"7";AT 8,16;"/"
\n8535 PRINT AT 2,9;"O";AT 3,9;"A";AT 10,10;"O";AT 11,10;"A"
\n8540 PRINT AT 1,11;"O";AT 2,11;"A"
\n8545 PRINT AT 0,20;"O";AT 1,20;"A";AT 15,22;"O";AT 16,22;"A"
\n8550 RETURN
\n8569 IF K=2 THEN RETURN
\n8575 LET W=W+1
\n8576 LET F=F+1
\n8577 LET Z=0
\n8578 LET SS=T(O)
\n8579 PRINT AT 11,3;" "
\n8580 FOR V=1 TO 17
\n8585 PRINT AT 7,M;"O";AT 8,M;"X"
\n8600 LET I=10
\n8605 PRINT AT 7,M;" ";AT 8,M;" "
\n8607 LET U=10
\n8610 LET M=M-1
\n8615 NEXT V
\n8620 STOP
\n8630 PAUSE 20
\n8635 CLS
\n8640 IF T(1)>T(2) THEN GOTO 8650
\n8642 IF T(1)=T(2) THEN GOTO 8672
\n8645 IF T(1)<T(2) THEN GOTO 8665
\n8650 LET U=Y(1)-T(2)
\n8655 PRINT AT 10,0;H$(1);"WINS BY ";U;" RUNS"
\n8660 STOP
\n8665 LET U=T(2)-T(1)
\n8670 PRINT AT 10,0;H$(2);"WINS BY ";U;" RUNS"
\n8671 STOP
\n8672 PRINT AT 10,0;"MATCH DRAWN"
\n8675 STOP
\n8680 CLEAR
\n8690 SAVE "1028%1"
\n8700 RUN