1 REM ###############################›2 REM # COMPUTER CRICKET #›3 REM # PART 5: PRINTOUT SUBROUTINE #›4 REM # by K. J. Bricknell #›5 REM # Published by Atari Computer #›6 REM # Enthusiasts (N.S.W.) #›7 REM # February 1985 #›8 REM ###############################›944 IF B=255 THEN POSITION 27,1:? NATION1$:POSITION 27,3:? NATION2$:GOTO 1550›946 IF B=128 THEN POSITION 0,17:? BLINE$;:POSITION 11,17:? "Printout complete"›1540 POKE 842,12:A=255:B=255:GOTO 860›1550 PLAYER$(1)=" ":PLAYER$(15)=" ":PLAYER$(2)=PLAYER$(1)›1560 GOSUB 3250:GOSUB 1430›1570 POSITION 2,16:? "ึๅ๎๕ๅ";:INPUT TEMP$:POSITION 2,18:? "ฤแ๔ๅ ";:INPUT PLAYER$›1580 TEMP$(LEN(TEMP$)+3)=PLAYER$:POSITION 2,19›1590 POSITION 0,16:? BLINE$;:POSITION 0,18:? BLINE$;›1600 POSITION 1,17:? "Ensure printer on-line. Press าลิีาฮ":POKE 764,255›1610 IF PEEK(764)<>12 THEN 1610›1620 GOSUB 1430›1630 POSITION 14,17:? "Printing...":OPEN #2,8,0,"P:":POKE 764,255›1640 ? #2;CHR$(27);"D";CHR$(20);CHR$(0);›1650 L=LEN(NATION2$):P=LEN(NATION1$):A=L+P+8:B=INT((40-A)/2)›1660 PLAYER$(1)=" ":PLAYER$(15)=" ":PLAYER$(2)=PLAYER$(1)›1670 ? #2;CHR$(14);CHR$(27);"G";PLAYER$(1,B);NATION2$;CHR$(27);"H";" VERSUS ";CHR$(27);"G";NATION1$›1680 ? #2:? #2;CHR$(9);CHR$(27);"H";CHR$(15);CHR$(14);TEMP$:? #2›1690 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);›1700 IF TEAM1$(679,679)="F" THEN ? #2;NATION1$;›1710 IF TEAM2$(679,679)="F" THEN ? #2;NATION2$;›1720 ? #2;" won the toss":? #2:? #2›1730 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);"SCOREBOARD ";NATION2$›1740 GOSUB 3260›1750 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34)›1760 GOSUB 3250:? #2;CHR$(18);›1770 FOR L=1 TO 11:? #2;CHR$(9);:FOR LL=0 TO 39›1780 IF ASC(TEAM2$(L*60-59+LL,L*60-59+LL))=2 THEN ? #2;" ";CHR$(27);"E";:GOTO 1830›1790 IF ASC(TEAM2$(L*60-59+LL,L*60-59+LL))=239 THEN ? #2;CHR$(27);"E";:GOTO 1830›1800 IF ASC(TEAM2$(L*60-59+LL,L*60-59+LL))=22 THEN ? #2;" ";CHR$(27);"F";:GOTO 1830›1810 IF ASC(TEAM2$(L*60-59+LL,L*60-59+LL))=32 THEN ? #2;CHR$(27);"F";:GOTO 1830›1820 IF ASC(TEAM2$(L*60-59+LL,L*60-59+LL))=160 THEN ? #2;CHR$(27);"F";›1830 ? #2;TEAM2$(L*60-59+LL,L*60-59+LL);:NEXT LL:? #2:NEXT L›1840 GOSUB 3250›1850 ? #2;CHR$(27);"E";CHR$(9);TEMP$(1,30);"Extras ";CHR$(27);"F";TEAM2$(661,663);CHR$(18)›1860 ? #2;CHR$(14);" OVERS ";CHR$(27);"E";TEAM2$(664,665);" ";TEAM2$(666,667);CHR$(27);"F";" FOR ";›1870 ? #2;CHR$(27);"E";TEAM2$(668,670);CHR$(27);"F":? #2;CHR$(9);"Run rate: ";CHR$(27);"E";›1880 ? #2;TEAM2$(671,674);CHR$(27);"F"›1890 GOSUB 3260›1900 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34):? #2:? #2›1910 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);"SCOREBOARD ";NATION1$›1920 GOSUB 3260›1930 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34)›1940 GOSUB 3250:? #2;CHR$(18);›1950 FOR L=1 TO 11:? #2;CHR$(9);:FOR LL=0 TO 39›1960 IF ASC(TEAM1$(L*60-59+LL,L*60-59+LL))=2 THEN ? #2;" ";CHR$(27);"E";:GOTO 2010›1970 IF ASC(TEAM1$(L*60-59+LL,L*60-59+LL))=239 THEN ? #2;CHR$(27);"E";:GOTO 2010›1980 IF ASC(TEAM1$(L*60-59+LL,L*60-59+LL))=22 THEN ? #2;" ";CHR$(27);"F";:GOTO 2010›1990 IF ASC(TEAM1$(L*60-59+LL,L*60-59+LL))=32 THEN ? #2;CHR$(27);"F";:GOTO 2010›2000 IF ASC(TEAM1$(L*60-59+LL,L*60-59+LL))=160 THEN ? #2;CHR$(27);"F";›2010 ? #2;TEAM1$(L*60-59+LL,L*60-59+LL);:NEXT LL:? #2:NEXT L›2020 GOSUB 3250›2030 ? #2;CHR$(27);"E";CHR$(9);TEMP$(1,30);"Extras ";CHR$(27);"F";TEAM1$(661,663);CHR$(18)›2040 ? #2;CHR$(14);" OVERS ";CHR$(27);"E";TEAM1$(664,665);" ";TEAM1$(666,667);CHR$(27);"F";" FOR ";›2050 ? #2;CHR$(27);"E";TEAM1$(668,670);CHR$(27);"F":? #2;CHR$(9);"Run rate: ";CHR$(27);"E";›2060 ? #2;TEAM1$(671,674);CHR$(27);"F";" Run rate required: ";CHR$(27);"E";TEAM1$(675,678);CHR$(27);"F"›2070 GOSUB 3260›2080 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34):? #2:? #2›2090 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);PART$(21,56):? #2:? #2›2100 ? #2;CHR$(18);CHR$(27);"D";CHR$(14);CHR$(0);CHR$(9);CHR$(15);CHR$(14);" FALL OF WICKET"›2110 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,44)›2120 ? #2;CHR$(18);CHR$(9);CHR$(27);"E";" 1 2 3 4 5 6 7 8 9 10";CHR$(27);"F"›2130 GOSUB 3250›2140 IF LEN(NATION2$)<11 THEN NATION2$(LEN(NATION2$)+1)=TEMP$›2150 IF LEN(NATION1$)<11 THEN NATION1$(LEN(NATION1$)+1)=TEMP$›2160 ? #2;CHR$(9);NATION2$;" ";›2170 FOR L=681 TO 717 STEP 4:? #2;TEAM2$(L,L+2);" ";:NEXT L:? #2›2180 ? #2;CHR$(9);NATION1$;" ";›2190 FOR L=681 TO 717 STEP 4:? #2;TEAM1$(L,L+2);" ";:NEXT L:? #2›2200 GOSUB 3260›2210 ? #2;CHR$(9);CHR$(15);CHR$(14);TEMP$(1,44):? #2›2220 ? #2;CHR$(18);CHR$(27);"D";CHR$(20);CHR$(0);CHR$(9);CHR$(15);CHR$(14);"RUN RATES"›2230 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34)›2240 ? #2;CHR$(18);CHR$(9);CHR$(27);"E";" 10 20 30 40 50";CHR$(27);"F"›2250 GOSUB 3250›2260 IF LEN(NATION2$)<11 THEN NATION2$(LEN(NATION2$)+1)=TEMP$›2270 IF LEN(NATION1$)<11 THEN NATION1$(LEN(NATION1$)+1)=TEMP$›2280 ? #2;CHR$(9);NATION2$;" ";›2290 FOR L=721 TO 737 STEP 4:? #2;TEAM2$(L,L+2);" ";:NEXT L:? #2›2300 ? #2;CHR$(9);NATION1$;" ";›2310 FOR L=721 TO 737 STEP 4:? #2;TEAM1$(L,L+2);" ";:NEXT L:? #2›2320 GOSUB 3260›2330 ? #2;CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34):? #2;CHR$(12)›2340 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);"PLAYER PERFORMANCE ";NATION2$›2350 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34)›2360 ? #2;CHR$(27);"D";CHR$(35);CHR$(0);CHR$(15);›2370 GOSUB 3250›2380 ? #2;CHR$(27);"G";CHR$(9);TEMP$(1,29);"STRIKE";TEMP$(1,25);"BOWLING"›2390 ? #2;CHR$(9);TEMP$(1,11);"RUNS FOURS SIXES RATE OVERS MAIDS RUNS WICKS AVERAGE";CHR$(27);"H"›2400 FOR L=1 TO 11›2410 ? #2;CHR$(9);TEAM2$(L*60-59,L*60-50);" ";TEAM2$(L*60-22,L*60-20);" ";›2420 ? #2;TEAM2$(L*60-19,L*60-18);" ";TEAM2$(L*60-17,L*60-16);" ";›2430 GOSUB 3250:TRAP 2490›2440 A=VAL(TEAM2$(L*60-22,L*60-20))›2450 B=VAL(TEAM2$(L*60-15,L*60-13)):P=INT(A/B*100):TEMP$=STR$(P)›2460 IF P<10 THEN ? #2;" ";:GOTO 2480›2470 IF P<100 THEN ? #2;" ";›2480 ? #2;TEMP$;:GOTO 2500›2490 ? #2;" ";›2500 ? #2;" ";TEAM2$(L*60-12,L*60-11);" ";TEAM2$(L*60-10,L*60-9);" ";TEAM2$(L*60-8,L*60-6);›2510 ? #2;" ";TEAM2$(L*60-5,L*60-4);" ";›2520 GOSUB 3250:TRAP 2580›2530 A=VAL(TEAM2$(L*60-8,L*60-6)):B=VAL(TEAM2$(L*60-5,L*60-4))›2540 P=A/B:TEMP$=STR$(P):TEMP$(LEN(TEMP$)+1)=" "›2550 FOR LL=2 TO 3:IF TEMP$(LL,LL)=CHR$(46) OR TEMP$(LL,LL)=CHR$(32) THEN 2570›2560 NEXT LL›2570 P=4-LL:? #2;BLINE$(1,P);:GOTO 2590›2580 TEMP$=" "›2590 ? #2;TEMP$(1,5):TRAP 40000:NEXT L›2600 ? #2;CHR$(27);"D";CHR$(20);CHR$(0);›2610 GOSUB 3260›2620 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34):? #2:? #2›2630 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);"PLAYER PERFORMANCE ";NATION1$›2640 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34)›2650 ? #2;CHR$(27);"D";CHR$(35);CHR$(0);CHR$(15);›2660 GOSUB 3250›2670 ? #2;CHR$(27);"G";CHR$(9);TEMP$(1,29);"STRIKE";TEMP$(1,25);"BOWLING"›2680 ? #2;CHR$(9);TEMP$(1,11);"RUNS FOURS SIXES RATE OVERS MAIDS RUNS WICKS AVERAGE";CHR$(27);"H"›2690 FOR L=1 TO 11›2700 ? #2;CHR$(9);TEAM1$(L*60-59,L*60-50);" ";TEAM1$(L*60-22,L*60-20);" ";›2710 ? #2;TEAM1$(L*60-19,L*60-18);" ";TEAM1$(L*60-17,L*60-16);" ";›2720 GOSUB 3250:TRAP 2780›2730 A=VAL(TEAM1$(L*60-22,L*60-20))›2740 B=VAL(TEAM1$(L*60-15,L*60-13)):P=INT(A/B*100):TEMP$=STR$(P)›2750 IF P<10 THEN ? #2;" ";:GOTO 2770›2760 IF P<100 THEN ? #2;" ";›2770 ? #2;TEMP$;:GOTO 2790›2780 ? #2;" ";›2790 ? #2;" ";TEAM1$(L*60-12,L*60-11);" ";TEAM1$(L*60-10,L*60-9);" ";TEAM1$(L*60-8,L*60-6);›2800 ? #2;" ";TEAM1$(L*60-5,L*60-4);" ";›2810 GOSUB 3250:TRAP 2870›2820 A=VAL(TEAM1$(L*60-8,L*60-6)):B=VAL(TEAM1$(L*60-5,L*60-4))›2830 P=A/B:TEMP$=STR$(P):TEMP$(LEN(TEMP$)+1)=" "›2840 FOR LL=2 TO 3:IF TEMP$(LL,LL)=CHR$(46) OR TEMP$(LL,LL)=CHR$(32) THEN 2860›2850 NEXT LL›2860 P=4-LL:? #2;BLINE$(1,P);:GOTO 2880›2870 TEMP$=" "›2880 ? #2;TEMP$(1,5):TRAP 40000:NEXT L›2890 ? #2;CHR$(27);"D";CHR$(20);CHR$(0);›2900 GOSUB 3260›2910 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,34):? #2:? #2›2920 ? #2;CHR$(18);CHR$(27);"D";CHR$(13);CHR$(0);CHR$(9);CHR$(15);CHR$(14);" PARTNERSHIPS ";NATION2$›2930 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,49)›2940 ? #2;CHR$(27);"D";CHR$(22);CHR$(0);:B=0›2950 ? #2;CHR$(9);:FOR L=1 TO 5›2960 IF TEMPERF(B)=0 OR B=30 THEN A=(L-1)*3-1:GOTO 3000›2970 ? #2;TEAM2$(TEMPERF(B)*60-59,TEMPERF(B)*60-50);" ";:TEMP$(1,4)=" "›2980 TEMP$(1,4)=STR$(TEMPERF(B+2)):? #2;TEMP$(1,4);" ";›2990 B=B+3:NEXT L:A=14:L=6›3000 IF L=1 THEN 3060›3010 ? #2;CHR$(13);CHR$(9);›3020 FOR LL=1 TO L-1›3030 ? #2;TEAM2$(TEMPERF(B-A)*60-59,TEMPERF(B-A)*60-50);" ";›3040 A=A-3:NEXT LL:? #2:IF TEMPERF(B)<>0 AND B<>30 THEN ? #2›3050 GOTO 2950›3060 GOSUB 3260:? #2;CHR$(15);CHR$(14);:FOR L=1 TO 11:? #2;CHR$(8);›3070 NEXT L:? #2;TEMP$(1,49):? #2:? #2›3080 ? #2;CHR$(18);CHR$(27);"D";CHR$(13);CHR$(0);CHR$(9);CHR$(15);CHR$(14);" PARTNERSHIPS ";NATION1$›3090 ? #2;CHR$(18);CHR$(9);CHR$(15);CHR$(14);TEMP$(1,49)›3100 ? #2;CHR$(27);"D";CHR$(22);CHR$(0);:B=30›3110 ? #2;CHR$(9);:FOR L=1 TO 5›3120 IF TEMPERF(B)=0 OR B=60 THEN A=(L-1)*3-1:GOTO 3160›3130 ? #2;TEAM1$(TEMPERF(B)*60-59,TEMPERF(B)*60-50);" ";:TEMP$(1,4)=" "›3140 TEMP$(1,4)=STR$(TEMPERF(B+2)):? #2;TEMP$(1,4);" ";›3150 B=B+3:NEXT L:A=14:L=6›3160 IF L=1 THEN 3220›3170 ? #2;CHR$(13);CHR$(9);›3180 FOR LL=1 TO L-1›3190 ? #2;TEAM1$(TEMPERF(B-A)*60-59,TEMPERF(B-A)*60-50);" ";›3200 A=A-3:NEXT LL:? #2:IF TEMPERF(B)<>0 AND B<>60 THEN ? #2›3210 GOTO 3110›3220 GOSUB 3260:? #2;CHR$(15);CHR$(14);:FOR L=1 TO 11›3230 ? #2;CHR$(8);:NEXT L:? #2;TEMP$(1,49):? #2:? #2:GOSUB 3250:POSITION 14,17:? TEMP$(1,12):? #2;CHR$(15);›3234 ? #2;CHR$(14);CHR$(9);:POSITION 1,16:? "Man of the match";:INPUT TEMP$:? #2;"Man of the match: ";TEMP$:? #2›3236 GOSUB 3250:POSITION 1,18:? "Game number";:INPUT TEMP$:? #2;CHR$(15);CHR$(14);CHR$(9);"Game number: ";TEMP$›3240 ? #2;CHR$(12):GOSUB 1430:B=128:A=255:CLOSE #2:GOTO 860›3250 TEMP$(1)=" ":TEMP$(100)=" ":TEMP$(2)=TEMP$(1):RETURN ›3260 TEMP$(1)="-":TEMP$(100)="-":TEMP$(2)=TEMP$(1):RETURN ›