@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@W!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr SOFTBALL STATISTICS PROGRAM -------- ---------- ------- NOTE ON LANGUAGE: This program was uploaded in LISTed BASIC A+. T}o use with BASIC A+, just ENTER the program, and then SAVE a copy (see note on "starting" below). According to OSS, people wi}th BASIC XL/XE can also ENTER and then SAVE the program with their type of BASIC and it will work fine. However, I use PRINT} USING and IF:THEN:ELSE commands in the program, so it is **NOT** compatable with ATARI BASIC. NOTE ON STARTING: Be sure t}hat you give the program the file name "SOFTBALL.BAP" (actually, any name with an extender). NOTE ON PRINTERS: All output }from this program is formmatted in 80 columns. Therefore, I do not have any statistical data output to the screen. The first } option you have when the program starts is choosing Epson or 1020 Plotter for your printer. The only Epson specific codes in } the program produce enlarged titles on each data sheet, and call for the form feed at the end of a data sheet. These are in } lines 1230, 1610, 1680, 1690, 2180, 2410, and 2790 and could be changed for your printer type. If you choose 1020 plotter f }or your printer it is set to 80 columns mode. THE PROGRAM --- ------- The first thing you do is to choose betwee}n an Epson printer and the 1020 plotter. defaults to Epson. Otherwise, hit <1> and for a 1020 plotter. } After that, if you haven't used the program before, you are requested to enter the team name. This can be up to 30 characte}rs long. The inverse "A" in "max" is 30 characters from the margin and can be used as a guide. (Other prompts in the progra}m have inverse characters at maximum length, also.) Next you are shown the main menu. I'll explain the "INPUT DATA" choic}e later; the other choices are pretty much self-explanatory. "PRINT ALL STATS" prints out each player's stats, plus a sheet }containing the totals for all team players. "PRINT TEAM TOTALS" just prints out the team totals sheet. "PRINT INDIVIDUAL ST}ATS" allows you to print one player's stats at a time, choosing the player from a menu. "QUIT" returns you to BASIC. When} you choose either "PRINT ALL STATS" or "PRINT TEAM STATS", you are given the option of having two B/GRAPH data files created}. One is a B/GRAPH bar chart depicting the batting averages, on-base percentages, and the slugging percentages of the team pl}ayers. The file created is called "STATS.BAR". The other is a pie chart based on number of RBIs for each player. This file }is called "RBIS.PIE". (Due to the 16 element limitation on pie charts, this file will not be created if there are more than 1}6 players on your team.) At the prompt asking if files should be created, defaults to "N". When you choose "INPU}T DATA" the following things happen. The first time you enter data, the "INPUT DATA" menu only has two options: "ADD NEW NAME}" and "MAIN MENU". Choosing "MAIN MENU" puts you back in the first menu. "ADD NEW NAME" lets you start your data base. When} you add a new name, you are requested to type in a file name for that player. Each player will get a file, so choose someth}ing like the the players first name and initial to help you remember which file is for which player. This is a DOS file na}me, so only use alphanumerics. Also, don't use an extender (e.g., ".ddd"). As the prompt states, the drive number will be a}dded for you. When it asks if the file name is OK, defaults to "Y". You will then be promted to type in the player }'s name. The name you use will be the name printed out in the stats for that player. You only need to go through these pr!}eliminaries once for each player. Subsequent entries in the data base for that player will start at the following point. Y"}ou will be prompted for the name of the opponent, the player's number of at-bats, singles, doubles, triples, homers, walks, e#}rrors, runs scored, and runs batted in. For each new game you have to enter the name of the opponent only once. After you e$}nter it for the first player, just hitting at the opponent prompt for each later player will enter the same opponent%} name for that player. You can type in a new opponent if you wish. After you have the opponent name entered, other stats &}(e.g., singles, doubles, etc.) need to be enter. However, if a stat is "zero", you can just hit and a "zero" will b'}e entered for you. When you have entered the last stat for a player, you will be given the chance to alter any of the data, (}from opponent through RBI's. The cursor will go to the opponent data. Change it if needed, otherwise hit . The cur)}sor will then go through each of the other data elements. accepts them as they are printed on the screen. When you*} are done, you once again have the choice of editing the data. defaults to "Y" (data is OK). The next prompt ask+}s if you want to CONTINUE DATA INPUT. defaults to "Y". "N" puts you back in the main menu, where you can have the st,}ats printed out. "Y" returns you to the player input data level where you can add new players, or input data in files of exi-}sting players. "MAIN MENU" is always the last option of this menu. "ADD NEW NAME" is always the second to the last option. .} When printing the data, DMA is turned off until the printing is done. Also, team stats are printed in order of highest ba/}tting average first. After the season is over, you can use the global rename command "*,*.86" to rename your player files 0}so that you are ready for the next year, but still have the old files available. Putting an extender on the file means that 1}it will be ignored by the program. REmember that only player data files can be on the disk without extenders on their file2} name. The program assumes that any file name without an extender is a current player data file and will try to enter data f3}rom it into the program when printing out stats. If you get garbage at the bottom of your printout, you may have a nonplayer4} data file on your disk without an extender. All files with extenders are ignored. DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD5}DDDDDDDDDDDDDDDDDDD1KB BDDEEHI VHHIIH 1ɈL1 B10 ? "}":SET 2,ASC(">")20 GRAPHICS 17:FOR I=1 TO 4:? #6:NEXT I30 ? #6;"**********"40 ? #6;" *"7}50 ? #6;"* SOFTBALL STATS "60 ? #6;" *"70 ? #6;"* by karl wise "80 ? #6;" *"8}90 ? #6;"**********"100 FOR I=1 TO 1900:NEXT I110 DIM FILE$(14),FILELIST$(280),D1$(14),A$(1),NAME$(16),OPP$(14),S9}P$(80),F$(80),G$(3),OPP1$(14),R$(25),F1$(80)120 DIM F2$(80),SL$(10),SL1$(10),SL2$(10),U$(15):SL1$=" #.###":SL2$=" .###":U$(:}1)=CHR$(28):U$(15)=U$:U$(2)=U$130 DIM TYP$(5),BG$(1),BGBA(30),BGOB(30),BGSL(30)140 DIM RBI$(150),BGRBI(20):RBI$(1)=" ":RBI$;}(150)=RBI$:RBI$(2)=RBI$150 DIM FILESORT$(280),AVSRT(20):FILESORT$(1)=" ":FILESORT$(280)=FILESORT$:FILESORT$(2)=FILESORT$160<} DIM TA$(10),TA1$(10),TA2$(10):TA1$=" #.###":TA2$=" .###"170 DIM TOABSRT(20)180 SP$(1)=" ":SP$(80)=SP$:SP$(2)=SP$:R$(1=})=CHR$(31):R$(25)=R$:R$(2)=R$190 R$(1,1)=U$(1,1)200 DIM TEAMNAME$(30)210 TRAP 220:OPEN #7,8,0,"P:":CLOSE #7:GOTO 230220 ?>} "TURN ON PRINTER AND PRESS ":INPUT TEAMNAME$:? "}":GOTO 210230 TRAP 230:? "PSON OR 020";:INPUT TYP$:IF TYP$="" T?}HEN TYP$="E"240 IF TYP$(1,1)="1" THEN TYP$="1":GOTO 260250 TYP$="E"260 TRAP 330:OPEN #2,4,0,"D:TEAMNAME.LST":INPUT #2;TEAM@}NAME$:CLOSE #2270 TRAP 320:? "} ̠Ӡ":? " ";TEAMNAME$:? :? 280 ? " INPUT DATA":? " PRINT ALL STAA}TISTICS":? " PRINT TEAM TOTALS":? " PRINT INDIVIDUAL STATISTICS"290 ? " QUIT":INPUT A:? "}":CHOICE=A300 TRAP 0:ON A GOSUB}B 350,1010,1060,2220,320310 ? "}":GOTO 270320 END 330 ? "ENTER THE TEAM NAME (30 CHAR MX)":INPUT TEAMNAME$340 CLOSE #2:OC}PEN #2,8,0,"D:TEAMNAME.LST":? #2;TEAMNAME$:CLOSE #2:? "}":GOTO 260350 OPEN #2,6,0,"D:*.*":X=0360 INPUT #2;FILE$370 IF FILED}$(5,8)="FREE" THEN 410380 IF FILE$(11,13)<>" " THEN 360390 X=X+1:FILELIST$((X*12)-11,(X*12))=FILE$(3,14)400 ? X;".";FILEE}$:GOTO 360410 CLOSE #2:? X+1;". ADD NEW NAME":X=X+1420 ? X+1;". MAIN MENU":X=X+1430 TRAP 430:? "ENTER CHOICE NUMBER";:INF}PUT A:TRAP 0440 IF A>X THEN 430450 IF A=X THEN ? "}":GOTO 270460 IF A=X-1 THEN 510470 FILE$=FILELIST$((A*12)-11,(A*12))4G}80 D1$="D:"490 D1$(3)=FILE$:FILE$=D1$500 GOTO 620510 ? "ENTER NAME OF NEW DATA FILE":? "'D:' WILL BE ADDED BY COMPUTER":INH}PUT FILE$520 D1$="D:"530 D1$(3)=FILE$:FILE$=D1$540 ? :? FILE$;" WILL BE THE NEW":? "DATA FILE. IS THAT OK (Y/N)":INPUT A$I}550 IF A$="Y" OR LEN(A$)=0 THEN GOTO 580560 IF A$<"N" OR A$>"N" THEN 540570 GOTO 510580 OPEN #2,8,0,FILE$590 ? "INPUT PLAJ}YER'S NME (16 CHAR MAX)":INPUT NAME$600 ? #2;NAME$610 GOTO 640620 OPEN #2,9,0,FILE$630 ? "}DATA FILE IS ";FILE$(3):? 64K}0 ? "OPPONENT (14 CAR MAX)":INPUT OPP$:IF OPP$="" THEN OPP$=OPP1$650 OPP1$=OPP$:IF OPP$="" THEN ? U$(1,2);:GOTO 640660 ? RL}$(1,2);OPP$670 TRAP 880:? "AT BATS";:INPUT ABAT680 TRAP 890:? "SINGLES";:INPUT SINS690 TRAP 900:? "DOUBLES";:INPUT DOUBS7M}00 TRAP 910:? "TRIPLES";:INPUT TRIPS710 TRAP 920:? "HOMERS";:INPUT HRS720 TRAP 930:? "WALKS";:INPUT BBS730 TRAP 940:? "ERRN}ORS";:INPUT ERRS740 TRAP 950:? "RUNS";:INPUT RUNS750 TRAP 960:? "RBI'S";:INPUT RBI760 ? "IS THE DATA OK (Y/N)";:INPUT A$:IO}F A$="N" THEN ? R$(1,22);SP$(1,1):? U$(1,12);:GOTO 640770 ? #2;OPP$780 ? #2;ABAT790 ? #2;SINS800 ? #2;DOUBS810 ? #2;TRIPP}S820 ? #2;HRS830 ? #2;BBS840 ? #2;ERRS850 ? #2;RUNS860 ? #2;RBI870 GOTO 970880 ABAT=0:? R$(1,9);0:GOTO 680890 SINS=0:Q}? R$(1,9);0:GOTO 690900 DOUBS=0:? R$(1,9);0:GOTO 700910 TRIPS=0:? R$(1,9);0:GOTO 710920 HRS=0:? R$(1,8);0:GOTO 720930 BBSR}=0:? R$(1,7);0:GOTO 730940 LET ERRS=0:? R$(1,8);0:GOTO 740950 LET RUNS=0:? R$(1,6);0:GOTO 750960 RBI=0:? R$(1,7);0:GOTO 76S}0970 CLOSE #2980 ? "CONTINUE DATA INPUT (Y/N)";:INPUT A$990 IF A$<>"N" THEN ? "}":GOTO 3501000 RETURN 1010 REM PRINT ALLT} STATS1020 F1$="!!!!!!!!!!!!!! ### ## ## ## ## ## ## ## ## ### #.### #.###"1030 F2$="!!!!!!!!!!!!!! ### ## ## ## ## ## ##U} ## ## ### .### #.###"1040 OPEN #7,8,0,"P:"1050 IF TYP$="1" THEN ? #7;CHR$(27);CHR$(19);1060 TRAP 1060:? "DO YOU WANT BV}/GRAPH":? "DATA FILES CREATED (Y/N)";:INPUT BG$:TRAP 01070 IF BG$="Y" THEN GOTO 10901080 BG$="N"1090 OPEN #2,6,0,"D:*.*":XW}=01100 DARK=PEEK(559):POKE 559,01110 INPUT #2;FILE$1120 IF FILE$(5,8)="FREE" THEN 11501130 IF FILE$(11,13)<>" " THEN 11X}101140 X=X+1:FILELIST$((X*12)-11,(X*12))=FILE$(3,14):GOTO 11101150 XSRT=X:CLOSE #2:GOSUB 30101160 IF CHOICE=3 THEN 163011Y}70 FOR I=1 TO X1180 D1$="D:"1190 G=01200 FILE$=FILELIST$((I*12)-11,(I*12)):D1$(3)=FILE$:FILE$=D1$1210 TRAP 14301220 OPENZ} #2,4,0,FILE$1230 INPUT #2;NAME$:? #7:? #7:? #7;CHR$(14);SP$(1,(18-INT(LEN(NAME$)/2)));NAME$:? #7:? #71240 ? #7;"OPPONENT [} A/B H 1 2 3 HR BB E R RBI AVG O-B% S% C AVG"1250 ? #7;"-------------- --- -- -- -- -- -- -- -- -- --- -\}---- ----- ----- -----"1260 INPUT #2;OPP$:INPUT #2;ABAT:INPUT #2;SINS:INPUT #2;DOUBS:INPUT #2;TRIPS:INPUT #2;HRS:INPUT #]}2;BBS1270 INPUT #2;ERRS:INPUT #2;RUNS:INPUT #2;RBI1280 F$="!!!!!!!!!!!!!! ### ## ## ## ## ## ## ## ## ### .### .###"12^}90 HITS=SINS+DOUBS+TRIPS+HRS1300 IF ABAT=0:AVG=0:ELSE :AVG=HITS/ABAT:ENDIF :OB1=ABAT+BBS:IF OB1=0:OB=0:ELSE :OB=(HITS+BBS)/(_}OB1):ENDIF 1310 IF AVG=1 THEN F$=F1$:GOTO 13301320 IF OB=1 THEN F$=F2$1330 G=G+11340 IF ABAT=0:SLUG=0:ELSE :SLUG=(SINS+(2`}*DOUBS)+(3*TRIPS)+(4*HRS))/ABAT:ENDIF 1350 IF SLUG>=1:SL$=SL1$:ELSE :SL$=SL2$:ENDIF 1360 TOABAT=TOABAT+ABAT:THITS=THITS+HITa}S:TSINS=TSINS+SINS:TDOUBS=TDOUBS+DOUBS:TTRIPS=TTRIPS+TRIPS1370 THRS=THRS+HRS:TBBS=TBBS+BBS:TERRS=TERRS+ERRS:TRUNS=TRUNS+RUNSb}:TRBI=TRBI+RBI1380 IF TOABAT=0:TAVG=0:ELSE :TAVG=THITS/TOABAT:ENDIF 1390 IF TAVG>=1:TA$=TA1$:ELSE :TA$=TA2$:ENDIF 1400 PRIc}NT #7; USING F$,OPP$,ABAT,HITS,SINS,DOUBS,TRIPS,HRS,BBS,ERRS,RUNS,RBI,AVG,OB;:? #7; USING SL$,SLUG;1410 ? #7; USING TA$,TAVGd}1420 GOTO 12601430 CLOSE #21440 TRAP 01450 G$=STR$(G):OPP$="TOTAL ( GMS)"1460 IF LEN(G$)=1 THEN OPP$(9,9)=G$:GOTO 1480e}1470 OPP$(8,9)=G$1480 ? #7;"============== === == == == == == == == == === ===== ===== ===== ====="1490 F$="!!!!!!!!!!f}!!!! ### ## ## ## ## ## ## ## ## ### .### .###"1500 IF TOABAT=0:SLUG=0:ELSE :SLUG=(TSINS+(2*TDOUBS)+(3*TTRIPS)+(4*THRS))g}/TOABAT:ENDIF 1510 IF SLUG>=1:SL$=SL1$:ELSE :SL$=SL2$:ENDIF 1520 IF TOABAT=0:AVG=0:ELSE :AVG=THITS/TOABAT:ENDIF 1530 IF TOh}ABAT=0 AND TBBS=0:OB=0:ELSE :OB=(THITS+TBBS)/(TOABAT+TBBS):ENDIF 1540 IF AVG=1 THEN F$=F1$:GOTO 15601550 IF OB=1 THEN F$=F2i}$1560 PRINT #7; USING F$,OPP$,TOABAT,THITS,TSINS,TDOUBS,TTRIPS,THRS,TBBS,TERRS,TRUNS,TRBI,AVG,OB;1570 ? #7; USING SL$,SLUGj}1580 TOABAT=0:THITS=0:TSINS=0:TDOUBS=0:TTRIPS=0:THRS=0:TBBS=0:TERRS=0:TRUNS=0:TRBI=01590 DEFIN=0:GOSUB 28201600 IF TYP$="1"k} THEN ? #7:? #7:? #7:? #71610 PRINT #7;CHR$(140);:NEXT I1620 CLOSE #2:CLOSE #71630 F1$="!!!!!!!!!!!!!!!! %% ### ### ### ##l}# ### ### ### ### ### ### #.### #.###"1640 F2$="!!!!!!!!!!!!!!!! %% ### ### ### ### ### ### ### ### ### ### .### #.###"m}1650 SL1$=" #.###":SL2$=" .###"1660 OPEN #7,8,0,"P:"1670 IF TYP$="1" THEN ? #7;CHR$(27);CHR$(19);1680 ? #7:? #7:? #7;CHRn}$(14);SP$(1,(18-INT(LEN(TEAMNAME$)/2)));TEAMNAME$1690 ? #7;CHR$(14);SP$(1,(10));"TEAM STATISTICS":? #7:? #71700 ? #7;"PLAYEo}R'S NAME G A/B H 1 2 3 HR BB E R RBI AVG O-B% S%"1710 ? #7;"---------------- -- --- --- --- --- --p}- --- --- --- --- --- ----- ----- -----"1720 FOR I=1 TO X1730 D1$="D:"1740 G=01750 FILE$=FILELIST$((I*12)-11,(I*12)):D1q}$(3)=FILE$:FILE$=D1$1760 TRAP 18901770 OPEN #2,4,0,FILE$1780 INPUT #2;NAME$1790 INPUT #2;OPP$:INPUT #2;ABAT:INPUT #2;SINSr}:INPUT #2;DOUBS:INPUT #2;TRIPS:INPUT #2;HRS1800 INPUT #2;BBS:INPUT #2;ERRS:INPUT #2;RUNS:INPUT #2;RBI1810 F$="!!!!!!!!!!!!!s}!!! %% ### ### ### ### ### ### ### ### ### ### .### .###"1820 HITS=SINS+DOUBS+TRIPS+HRS1830 IF ABAT=0:AVG=0:ELSE :AVG=Ht}ITS/ABAT:ENDIF 1840 IF ABAT=0 AND BBS=0:OB=0:ELSE :OB=(HITS+BBS)/(ABAT+BBS):ENDIF 1850 G=G+11860 TOABAT=TOABAT+ABAT:THITS=u}THITS+HITS:TSINS=TSINS+SINS:TDOUBS=TDOUBS+DOUBS:TTRIPS=TTRIPS+TRIPS1870 THRS=THRS+HRS:TBBS=TBBS+BBS:TERRS=TERRS+ERRS:TRUNS=Tv}RUNS+RUNS:TRBI=TRBI+RBI1880 GOTO 17901890 CLOSE #21900 TRAP 01910 IF TOABAT=0:SLUG=0:ELSE :SLUG=(TSINS+(2*TDOUBS)+(3*TTRIw}PS)+(4*THRS))/TOABAT:ENDIF 1920 IF SLUG>=1:SL$=SL1$:ELSE :SL$=SL2$:ENDIF 1930 IF TOABAT=0:AVG=0:ELSE :AVG=THITS/TOABAT:ENDIx}F 1940 IF TOABAT=0 AND TBBS=0:OB=0:ELSE :OB=(THITS+TBBS)/(TOABAT+TBBS):ENDIF 1950 G$=STR$(G)1960 IF AVG=1 THEN F$=F1$:GOTOy} 19801970 IF OB=1 THEN F$=F2$1980 PRINT #7; USING F$,NAME$,G$,TOABAT,THITS,TSINS,TDOUBS,TTRIPS,THRS,TBBS,TERRS,TRUNS,TRBI,Az}VG,OB;1990 ? #7; USING SL$,SLUG2000 IF BG$="Y" THEN BGBA(I)=AVG:BGOB(I)=OB:BGSL(I)=SLUG:BGRBI(I)=TRBI2010 GABAT=GABAT+TOAB{}AT:GHITS=GHITS+THITS:GSINS=GSINS+TSINS:GDOUBS=GDOUBS+TDOUBS:GTRIPS=GTRIPS+TTRIPS2020 GHRS=GHRS+THRS:GBBS=GBBS+TBBS:GERRS=GER|}RS+TERRS:GRUNS=GRUNS+TRUNS:GRBI=GRBI+TRBI2030 TOABAT=0:THITS=0:TSINS=0:TDOUBS=0:TTRIPS=0:THRS=0:TBBS=0:TERRS=0:TRUNS=0:TRBI=}}02040 NEXT I2050 ? #7;"================ == === === === === === === === === === === ===== ===== ====="2060 F$="!!!!!!!!!!~}!!!!!! %% ### ### ### ### ### ### ### ### ### ### .### .###"2070 NAME$="TEAM TOTALS":G$=" "2080 IF GABAT=0:SLUG=0:ELSE }:SLUG=(GSINS+(2*GDOUBS)+(3*GTRIPS)+(4*GHRS))/GABAT:ENDIF 2090 IF SLUG>=1:SL$=SL1$:ELSE :SL$=SL2$:ENDIF 2100 IF GABAT=0:AVG=}0:ELSE :AVG=GHITS/GABAT:ENDIF 2110 IF GABAT=0 AND GBBS=0:OB=0:ELSE :OB=(GHITS+GBBS)/(GABAT+GBBS):ENDIF 2120 IF AVG=1 THEN F}$=F1$:GOTO 21402130 IF OB=1 THEN F$=F2$2140 PRINT #7; USING F$,NAME$,G$,GABAT,GHITS,GSINS,GDOUBS,GTRIPS,GHRS,GBBS,GERRS,GRU}NS,GRBI,AVG,OB;2150 ? #7; USING SL$,SLUG2160 DEFIN=1:REM GOSUB 50002170 GABAT=0:GHITS=0:GSINS=0:GDOUBS=0:GTRIPS=0:GHRS=0:G}BBS=0:GERRS=0:GRUNS=0:GRBI=02180 ? :REM #7;CHR$(140);2190 CLOSE #2:CLOSE #7:POKE 559,DARK2200 IF BG$="Y" THEN GOSUB 33302}210 RETURN 2220 REM PRINT INDIVIDUAL STATS2230 F1$="!!!!!!!!!!!!!! ### ## ## ## ## ## ## ## ## ### #.### #.###"2240 F2$=}"!!!!!!!!!!!!!! ### ## ## ## ## ## ## ## ## ### .### #.###"2250 OPEN #7,8,0,"P:"2260 IF TYP$="1" THEN ? #7;CHR$(27);CHR$}(19);2270 ? "̠":? 2280 OPEN #2,6,0,"D:*.*":X=02290 INPUT #2;FILE$2300 IF FILE$(5,8)="FREE" THEN 23402310 }IF FILE$(11,13)<>" " THEN 22902320 X=X+1:FILELIST$((X*12)-11,(X*12))=FILE$(3,14)2330 ? X;".";FILE$:GOTO 22902340 CLOSE #}22350 TRAP 2350:? "INPUT PLAYER NUMBER";:INPUT I:IF I<1 OR I>X THEN 2350:TRAP 02360 DARK=PEEK(559):POKE 559,02370 G=0:D1$=}"D:"2380 FILE$=FILELIST$((I*12)-11,(I*12)):D1$(3)=FILE$:FILE$=D1$2390 TRAP 26202400 OPEN #2,4,0,FILE$2410 INPUT #2;NAME$:}? #7:? #7:? #7;CHR$(14);SP$(1,(18-INT(LEN(NAME$)/2)));NAME$:? #7:? #72420 ? #7;"OPPONENT A/B H 1 2 3 HR BB E R R}BI AVG O-B% S% C AVG"2430 ? #7;"-------------- --- -- -- -- -- -- -- -- -- --- ----- ----- ----- -----"2440 I}NPUT #2;OPP$:INPUT #2;ABAT:INPUT #2;SINS:INPUT #2;DOUBS:INPUT #2;TRIPS:INPUT #2;HRS:INPUT #2;BBS2450 INPUT #2;ERRS:INPUT #2;}RUNS:INPUT #2;RBI2460 F$="!!!!!!!!!!!!!! ### ## ## ## ## ## ## ## ## ### .### .###"2470 HITS=SINS+DOUBS+TRIPS+HRS2480 }IF ABAT=0:AVG=0:ELSE :AVG=HITS/ABAT:ENDIF 2490 OB1=ABAT+BBS:IF OB1=0:OB=0:ELSE :OB=(HITS+BBS)/(ABAT+BBS):ENDIF 2500 IF ABAT}=0:SLUG=0:ELSE :SLUG=(SINS+(2*DOUBS)+(3*TRIPS)+(4*HRS))/ABAT:ENDIF 2510 IF SLUG>=1:SL$=SL1$:ELSE :SL$=SL2$:ENDIF 2520 G=G+1}2530 TOABAT=TOABAT+ABAT:THITS=THITS+HITS:TSINS=TSINS+SINS:TDOUBS=TDOUBS+DOUBS:TTRIPS=TTRIPS+TRIPS2540 THRS=THRS+HRS:TBBS=TB}BS+BBS:TERRS=TERRS+ERRS:TRUNS=TRUNS+RUNS:TRBI=TRBI+RBI2550 IF TOABAT=0:TAVG=0:ELSE :TAVG=THITS/TOABAT:ENDIF 2560 IF TAVG>=1}:TA$=TA1$:ELSE :TA$=TA2$:ENDIF 2570 IF AVG=1 THEN F$=F1$:GOTO 25902580 IF OB=1 THEN F$=F2$2590 PRINT #7; USING F$,OPP$,ABA}T,HITS,SINS,DOUBS,TRIPS,HRS,BBS,ERRS,RUNS,RBI,AVG,OB;2600 ? #7; USING SL$,SLUG;:? #7; USING TA$,TAVG2610 GOTO 24402620 CLO}SE #22630 TRAP 02640 G$=STR$(G):OPP$="TOTAL ( GMS)"2650 IF LEN(G$)=1 THEN OPP$(9,9)=G$:GOTO 26702660 OPP$(8,9)=G$2670 }? #7;"============== === == == == == == == == == === ===== ===== ===== ====="2680 F$="!!!!!!!!!!!!!! ### ## ## ## ## ## }## ## ## ### .### .###"2690 IF TOABAT=0:SLUG=0:ELSE :SLUG=(TSINS+(2*TDOUBS)+(3*TTRIPS)+(4*THRS))/TOABAT:ENDIF 2700 IF S}LUG>=1:SL$=SL1$:ELSE :SL$=SL2$:ENDIF 2710 IF TOABAT=0:AVG=0:ELSE :AVG=THITS/TOABAT:ENDIF 2720 IF TOABAT=0 AND TBBS=0:OB=0:E}LSE :OB=(THITS+TBBS)/(TOABAT+TBBS):ENDIF 2730 IF AVG=1 THEN F$=F1$:GOTO 27502740 IF OB=1 THEN F$=F2$2750 PRINT #7; USING F}$,OPP$,TOABAT,THITS,TSINS,TDOUBS,TTRIPS,THRS,TBBS,TERRS,TRUNS,TRBI,AVG,OB;2760 ? #7; USING SL$,SLUG2770 TOABAT=0:THITS=0:TS}INS=0:TDOUBS=0:TTRIPS=0:THRS=0:TBBS=0:TERRS=0:TRUNS=0:TRBI=02780 DEFIN=0:GOSUB 28202790 PRINT #7;CHR$(140);2800 CLOSE #2:C}LOSE #7:POKE 559,DARK2810 RETURN 2820 REM DEFINITIONS2830 ? #7:? #7:? #7:? #7:? #7:? #7;" DEFINITIONS OF ABBREVIATIONS"}:? #7;" ----------- -- -------------"2840 IF DEFIN=0:? #7;" GMS: Games Played":ELSE :? #7;" G: Games Played":}ENDIF 2850 ? #7;" A/B: Official At Bats"2860 ? #7;" H: Hits"2870 ? #7;" 1: Singles"2880 ? #7;" 2: } Doubles"2890 ? #7;" 3: Triples"2900 ? #7;" HR: Home Runs"2910 ? #7;" BB: Base on Balls"2920 ? #7;" } E: Errors"2930 ? #7;" R: Runs scored"2940 ? #7;" RBI: Runs Batted In"2950 ? #7;" AVG: Batting Aver}age":? #7;" [Hits/At Bats]"2960 ? #7;" O-B%: On-base Percentage":? #7;" [(Hits+Walks)/(At Bats+Walks})]"2970 ? #7;" S%: Slugging Percentage"2980 ? #7;" [(Singles+(Doubles*2)+(Triples*3)+(Homers*4))/At Bats]"}2990 ? #7;" C AVG: Cumulative Batting Average":? #7;" [Cumulative average only through that game]"3000 RETURN }3010 FOR I=1 TO XSRT3020 D1$="D:"3030 FILE$=FILELIST$((I*12)-11,(I*12)):D1$(3)=FILE$:FILE$=D1$3040 TRAP 31203050 OPEN #2,}4,0,FILE$3060 INPUT #2;NAME$3070 INPUT #2;OPP$:INPUT #2;ABAT:INPUT #2;SINS:INPUT #2;DOUBS:INPUT #2;TRIPS3080 INPUT #2;HRS:}INPUT #2;BBS:INPUT #2;ERRS:INPUT #2;RUNS:INPUT #2;RBI3090 HITS=SINS+DOUBS+TRIPS+HRS3100 TOABAT=TOABAT+ABAT:THITS=THITS+HITS}:TSINS=TSINS+SINS:TDOUBS=TDOUBS+DOUBS:TTRIPS=TTRIPS+TRIPS:THRS=THRS+HRS3110 GOTO 30703120 CLOSE #23130 TRAP 03140 IF TOAB}AT=0:AVG=0:ELSE :AVG=THITS/TOABAT:ENDIF 3150 AVSRT(I)=AVG:TOABSRT(I)=TOABAT3160 TOABAT=0:THITS=0:TSINS=0:TDOUBS=0:TTRIPS=0:}THRS=03170 NEXT I3180 CLOSE #23190 FOR I=1 TO XSRT3200 J=1:SRTNUM=0:TRIP=03210 IF AVSRT(J)=-1 THEN J=J+1:GOTO 32103220 }CKNUM=AVSRT(J):CKAB=TOABSRT(J)3230 FOR K=J TO XSRT3240 IF CKNUM>AVSRT(K) THEN GOTO 32703250 IF CKNUM=AVSRT(K) AND CKAB>=TO}ABSRT(K) THEN GOTO 32703260 SRTNUM=K:CKNUM=AVSRT(K):CKAB=TOABSRT(K):TRIP=13270 NEXT K3280 IF TRIP=0 THEN SRTNUM=J3290 FIL}ESORT$((I*12)-11,(I*12))=FILELIST$((SRTNUM*12)-11,(SRTNUM*12)):AVSRT(SRTNUM)=-13300 NEXT I3310 FILELIST$=FILESORT$3320 RET}URN 3330 REM B/GRAPH FILE CREATOR3340 BGBIG=03350 FOR I=1 TO X:IF BGBA(I)>BGBIG THEN BGBIG=BGBA(I)3360 NEXT I3370 FOR I=}1 TO X:IF BGOB(I)>BGBIG THEN BGBIG=BGOB(I)3380 NEXT I3390 FOR I=1 TO X:IF BGSL(I)>BGBIG THEN BGBIG=BGSL(I)3400 NEXT I3410} OPEN #5,8,0,"D:STATS.BAR"3420 ? #5;33430 ? #5;TEAMNAME$3440 ? #5;03450 ? #5;"TEAM STATS"3460 ? #5;03470 ? #5;"ԯ}"3480 ? #5;" "3490 ? #5;X3500 ? #5;13510 ? #5;03520 ? #5;13530 ? #5;03540 ? #5;123550 ? #5;"1 "3560 ? #5;BGBA(X)}3570 ? #5;13580 FOR I=1 TO X:? #5;BGBA(I):NEXT I:FOR I=1 TO X:? #5;BGOB(I):NEXT I:FOR I=1 TO X:? #5;BGSL(I):NEXT I3590 ? #5};" ":? #5;03600 ? #5;" "3610 ? #5;03620 ? #5;13630 ? #5;13640 ? #5;03650 ? #5;BGBIG:? #5;13660 ? #5;"AVERAGE ON-BASE%S}LUGGING"3670 ? #5;03680 ? #5;23690 CLOSE #5:IF X>16 THEN RETURN 3700 BGRBIS=500:BGRBIB=03710 FOR I=1 TO X:IF BGRBI(I)>BG}RBIB THEN BGRBIB=BGRBI(I)3720 IF BGRBI(I):@ Sketch! ---------by Filip Mulier Public Domain Sketch! is a graphics pictureprogram pac}ked with functions whichallow you to create 9 colordrawings in graphics 10 (80x160).Some features include icon menus,line} rubberbanding, fill function,curve draw function, and blockcopy. The program allows you to use twojoystick devices (a }stick and atrackball perhaps) to allow yougreater ease in drawing. Theprogram requires a 48k computerwith an Action! cart}ridge and a GTIA graphics chip. If you want the Action sourcecode, try to reach me somehow (Imnew to Compuserve) but be }prepared,for 300 total sectors of programsegments. I will only upload itwhen there are enough requests. Fil}e Procedure 1.Download SKETCH.OBJ 2.Download SKETCS.DAT and rename to CHARSET.DAT 3.Download sample pictures }4.remember-don't make sketch anautorun.sys file because it willnot work properly. 5.also-you have to run theprogram u}sing the L option of DOSbecause its too big to run with the Action cartridge When the program is first loaded,you wi}ll see that the screen isdivided into three sections. Thetop color bands are used to selectthe color you wish to work with} andthe fine horizontal line shows thepresent color. The middle sectionis your drawing area and the bottomis the icon men}u area. The main icon menu will showthese 9 major functions: function icon description 1. Freehand (s}quiggly line) 2. Lines (straight line) 3. Fill (solid area) 4. Curves (a curve) 5. Characters }(a,b,c) 6. Change Colors (paint pot) 7. Box Erase (eraser wiping) 8. Disk IO (diskette) 9. Copy (2 sma}ll boxes) To select a function use ajoystick to move pointer on desiredicon and press trigger. When youare in the draw}ing area, press thespace bar to enter the icon menuarea. Pressing the space bar againwill return you back to the drawinga}rea. One icon common to all functionmenus is the big M which returnsyou back to the main menu. Icons common to gra}phics functions 1. speed control (arrow up-dwn) 2. color select (palette) 1. To adjust speed, hold triggerdown whi}le clicking the joystick upor down. speed 1-slowest,6-fastest 2. To select a color , presstrigger ,and cursor will move t}othe top third of the screen. Moveon to desired color and presstrigger again. Some special keys Pressing ESC} and a number key(1-9) will allow you to set astake. A stake is a point you wantthe computer to remember so thatyou can r}eturn to it easily. Toreturn to a stake you press thenumber entered previously. Stake 0can be used as a normal stake buti}t has a special function that willbe described later. Three keys willgive you some alignment tools. the(-) key will displa}y a horizontalfixed line and the (=) key willdisplay a vertical line. The (+)key will put crosshairs on thecursor. To rem}ove any of thesealignment functions, press the (*)key. Main Functions.1.Freehand Freehand lets you plot pixel}sunder direct cursor control.Erasing can be done by picking thebackground color.2.Lines Lets you draw straight lines.} move to first endpoint press trigger to label it move to general area of 2nd endpt hold down trigger to rubberband }let trigger up to draw line to abort the line whilerubberbanding, move to firstendpoint or go to stake zero.2.Fill }Lets you fill an enclosed areawith color. Move to area and presstrigger.3.Curves Lets you draw a curve through aset of} points. Enter points bypressing trigger. Erase points bymoving onto an entered point andpress trigger again. Icon menu:} Circle-draws a closed curve Open circle-draws an open curve4.Characters Lets you plot characters in avariety of siz}es. First use a,b,c icon to enter thelist of characters you want toplot. For the first time, usebackspace key to erase th}e blanksand move cursor left. Type in thecharacters (max 15) and pressreturn. Move back to the drawing area andpress the} trigger where you wantthe upper left corner of the firstcharacter to appear. Move to the general area where youwant the} lower right corner toappear and hold down the trigger The box will rubberband and youcan select the size of thecharacte}r Let the trigger up when you wantthe character plotted. To abort character whilerubberbanding, use stake zero6.Chan}ge colors Lets you change the colors of thepalette select the color you want tochange use the paint pot icon to chang}ethe selected color hold trigger down u/d on stick brightness l/r on stick hue use the broken line icon tochange a}ll colors back to default use the stripes icon to set all colors to the same hue butspectrum the brightness. The huecan} be adjusted by holding thetrigger down and moving the stick.7.Box eraseLets you erase a box or fill a boxwith a color} refer to icon 5, Characters tolearn how to use box rubberbanding.8.Disk IOLets you save,load picture files. arrow po}inting away from disketteloads a picture arrow pointing to diskette savesa picture diskette itself returns you toDOS} erase icon lets you delete a file The pictures are saved using apicture compression routine and arenot compatible (I }think) with anyother drawing program.9.Box CopyLets you copy a piece of a picturefrom one box to another. the icon wi}th two boxes allows youto select copy(leave orig intact)or move(make original backgroundcolor). use same proceedure to }draw arubberbanding box as before. Thiswill be your source box. move stick and another box willbe under your control.Th}is is thedestination box. press trigger when you wantcopy/move to occur. to stop or abort , put the secondbox over t}he first one (stake 0 ormanually) and press the trigger. Things to remember: -the color you choose in thismode is the }color you do not wanttransferred (normally background).This allows you to put one objecton top of another. -the copy/mov}e routine has nobuffer so if you overlap the boxes,the copy will work correctly, butthe next copy will use the alteredinf}ormation.Some hints and fun experiments. -use the box erase function with acolor other than background to makequick b}oxes. -use the alignment tools to keeplettering aligned -make "pipes" or "roads" on thescreen which are sealed at both}ends.When these pipes are filledwith another color, it looks like afluid is gushing through them. Youcan try adding forks }and tanks tomake a septic system. -set the colors to singlehue/spectrum brightness to drawcurved surfaces. -use the bo}x copy function butselect another color than thebackground for some specialeffects. -have fun and take creative risks.}[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 6-6-6- 6-&6-&6-&6-M:$%$%$, 6-'6-'6%#tv  $AB#C#JB|DE 1BHIDD#E 1D#0: B 1L B#C#C# }B# B 1N#$0SYS1}:e#D# d# D# .d#ȽD# 𩛙d#X# 1,A#PdD#ELO- A }.BJdD#E 1 1HH 0hh|DL^%1}:e# Lt% e#dD#EL% 1 0 . . }0% 1LD CARDS NOT ALLOWED IN DESTINATION 0 A.|K@C8?8>8A8?8B8@?8>8 5D8D8C88>8?' 81E8A8M>8 B8M?8L59 }D8B8A8 5@?8>8 5C8>8A8?8B8C8D8E8) IL8C8?8>8 5ILr9c`?8 }L9?8L9@8k8m@8l8iIcL9Q8m@8R8i>8^8m@8_8i>8ѮL9@8L9L9 @8@8 L8k8m }@8l8i`L:ILa< ::I-Lh:LH:Set horizontal:9 %%%%%`La<:I=L !}:L: Set vertical: %%%%%`La<:I*L:L:Clear: %`La<:I+L; "}L;Set crosshairs: %`La<:IL;L8; Set stake;.  :8:0 L;8:0%#8 #}:0%#8:0 䤩`L;L; No stake set; `La<8:0 La<8:0 $}#LEf=Mh=L0>e=h=g= k-f=h=e= !.LD> L0>d ԐL:> ,j=f=e= + )}k=f=g= +l=h=g= +m=h=e= +`L>%IL>%O% k-L>%IL>% % !.L>%I *}L>%O% k- % !. L>d ԐL?%L? ,`L$? ?? ????ILP?LF?D:??C? +}Lt?Filename > ?]  ?? @ ?? ??Z?L??A)?0L?9? ,}?I.?I? ?I*L$@?L$@?? Τ?m? ?i?? ??LX@?I~LX@?LX@8??? Τ? -} ???IL?`L@e@IL@e@o@Dp@:q@@D@:@ 43 .}L@Disk I/O@  /IL@ /IL@c@c@ m8d@c@ d@IL2A`L`Ed@ILB@o !? /} I( y@o D%ILBn@m@m@n@LAm@n@HH hhm@n@LtAj@i@ g@g@L 0}Bf@Of@LB%ILBi@ j@LB h@h@)@LBh@)?h@j@Ȍi@LBh@)LqB j@i@ l@k 1}@l@k@ i@ei@j@ej@h@)?h@LB j@i@h@g@f@ +8i@i@j@j@f@LAg@LA% y I(L 2}`Ed@ILBD w wl L`Ed@ILD@o !? I( y@o D%ILDn@m@m@n@LUCm@n@ 3} Ѥm@n@L$Ch@ g@g@LNDf@Of@LHD%ILBDg@f@ +h@EL:Dh@ILDi@I j@ILCh@ @ 4} ѤLDi@j@LDh@  Ѥi@) Ѥj@i@ 栅 ѤLDh@ Ѥi@) Ѥj@Ȍi@g@f@ + 5}h@LBDi@j@f@LnCg@L_C%ILDi@I j@ILzDh@ @ ѤLDi@j@LDh@  Ѥi@) Ѥj@i@ 6} ѤLDh@ Ѥi@) Ѥ% y I(L`Ed@IL`E@ !? I( y@ D%IL[E y @ 7} D@! ޤ y I(L`E% /ILyE /IL`ELA`LEEEEEEEL 8}ELetters> E EE   EEEE̓EE LfF|̓ELf 9}FELfFEE ΤEmEEiEEEELFEI~LF͂ELFEmEEi 8EEE ΤE :}EEEILE@`LF FFF FeFFF FeFFFFmF ;}88G8GFLsGFFFmF8[G[GFLmGFF +FLPGFL-G`LG tGxG LGxGi@ <} |G}GL HxGLGxG`LG8xG  |G}GL H_xGL HxG |G}GzGzGLH =} m|Gm}GmzG~GiG~GG{GyGyGLH{G)ILHzGvGwGyGuGtG F{ >}GyGLcHzGLH` HLH 43HHHHLI Characters H L$I ?} I LPILetters> I8 HH H%%%O @}81H%%% +HHLIHLIHH%%% + >H)LKH%%% +HLeKHM% M%LOJ A}HM% M%LOJHHHH /ILIJ /IL0JLbK%H%HHͫHLJ8HH)8H嬍HHHHH8H B}HJJJHLJ8HH)HeHHHHH8HHJJJHHͬHLK8HH)8H嬍HHHHH8HH C}JJJHLKK8HH)HeHHHHH8HHJJJH%HHHH n=LK%H%HH#H# /I D}LK /IL}KH%%% +L;LHL)LH%%% +%HLLHHmHHiHHH GH E}%H%%H%HHHHL;LH%%% +ILtIL]L CharactersLP  :HHILzL`LLHIL F}LHH EHH HIcLELLHLL 43LL Freehand L LL L G} LLL%%% O 81L%%% +LLL\MLLaMLL%%% + >L) H}LM%ML %I%ML %ILM%L%L%LML%%% +ILMLM Freehand M I} LN N  :LLIL.N`L LIcLMLMLQN 43HNINJNKNLN L J}ines Nr LN N GN%%%O 81FN%%% +LNGN K}LNGNLOGNGN%%% + >FN)L$PLN%%% +INLOHNM% M%LOINM% M%LOHNINJN L}KN /ILO /ILrOLO%JN%KN%JNKNINHN . LOd ԐLO ,LP%%HN%INHN# M}IN# /IL P /ILOLN%%% +LnPKNL\P%JNKNINHN .HNINJNKNLnPLN%% N}% +ILNLP Lines P LP P  :MNMNILP`MN MNIcLxPLN O} P} Q} R} S} T} U} V} W}LTTTȌT%TP%T%T%TR%T%TTTTT +TTMTLT X}UT`TTT +TPTTRTTTPLUTT +MTLUTTT +TTLUT`TTQT Y}TS8TTTIL+VTT +MTL+VTTT +TTLVT`TTQTTSTTTɭLVTT + Z}MTLVTTT +TTLsVT`TTQTTS8TT TLVTT +MTLVTTT +T [}TLVT`TTQTTS8TTTTLeUTTTL WT`TTTSTRTQTP8TTTLWT \}TLeUT`LTW 43L~W Fill Wi LW W MW%% ]}%O 81NW%%% +PWMWLWMWLWMWMW%%% + >NW)LKXPW%%% +%PW ^} % TPW%%% +ILWLX Fill Xr LX X  :OWOW _}ILX`OW OWIcLgXLWLX 43LY Change colorsX X K7%Xm%Xi)8嬍 `}XXm%XiJJJJX /ILgY /ILNYX m8XXXILY`LZXILYX؅Xم a} 81X8XX% *X)ILYLZXILAZ w2 wr w wĢ w$ wd w b} w wLZXILZX؅Xم 81XXXLZX 8XX *XLvZX)I c}LKZXILNYL YLZ Z 82ZZ8dZZ 2 Z d}ZZZ 8dZZ 2 ZZ8ZZ82ZZ e} 2 ZZZ ZeZZeZZ ZeZZeZZZ f}ZZ ZZZZZZ ZZZiZZiZZiZZiZZZZZ g}ZZZZZZ ZZZiZZiZZiZZiZZZZZ ZZZZ q}'B2SFTBLL DOCB6SFTBLL XMOB8SKETCH DOCBSKETCH OBJBSPARKY OBJBSPARKY TXTBSPDKEY BINB SPDKEY DOCBSPEED COMBSPEED DOCBTBCOM DOCBTBCOM XMOB TIME BINB TIME DOCZZ ZZZZZmZZmZmZmZd ZZZmZZmZ r}mZmZd ` x xL] ] ]]]]]]]] s}]L^]]Ȍ]]2]]]]]i m]*(m]] m]*(m]ȱ]i m]*(m]] t} m]*(m]ȱL_]]] m]*(m]]]] m]*(m]ȱ]i m u}]*(m] m]*(m]ȱ]i m]*(m] m]*(m]ȱ]i m]*(m] v} m]*(m]ȱ]i m]*(m] m]*(m]ȱ2]]]Ȍ]]]]]]Ls` w} m]*(m] 栍]] m]*(m] 栍]] m]m]] +]IL` m] x}*(m] 栍]] m]*(m] 栍]] m]]] m]]] .]L`` y}] ޠ]]]I8]]Ů]La]d]LSa]]i]LVa]]]]]]񅩬]] z}] Z]]]]]]]]]]]]]]]ȑ]]La]+]ILa]La8]]Ů {}]Lb]d]L"b]]i]L%b]]]]]]񅩬]]] Z]]]]]]]] m]*(m |}]]] m]*(m]]ȑ]]Lc]]82]  m]*(m] }}] ee2 ]]]]82]  m]*(m]] ~} ee2 ]]]Lc]2Lc]Lc]]Lc]Lc8]]Lc]]]] }Le]]]]Le]]Le]]]]Le]] 栅]] 栅 ee +]ILe }]]Le]]]]Le]]Le]]]]Le]] 栅]] 栅 e]] 栅 }]] 栅 e .]]]]]]]]]]]La`?wuvLLe 43DeLxe Cu }rves ed Le e Ce%%%O 81Be%%% +FeCe }LeCeLeCeCe%%% + >Be)LhFe%%% +DeLfAeAeAeMDeAe m9e*(m:e } 栅%E %ELfAe m=e*(m>e 栅 ee%E %EL8fAe m9e*(m:e } 栅%E %ELhAe m=e*(m>e 栅 ee%E %ELhDeLhAe%%%% }+AeDeLhAeEe8DeggEeLhEe m9e*(m:eEei m9e*(m:eEe m=e*(m>eEei } m=e*(m>eȱEei%Ee%EeLxg8DeDeLhDebLhDeDe m9e*(m:e%%  }De m=e*(m>e8% % FeDe%%%%% +LhLhToo many pointsh  } /ILh /ILhLiFe%%% +ILeL/i Curves i LMi i9 }  /ILmi /ILTi :GeGeILi`L5jGeILiDeLi% ?:e9e>e=eDe }? ]DeL5jGeIL5jDeL5j% ?:e9e>e=eDe? ]DeGeIcGeLiL }e`L[j%Vj%%O k- 43PjQjRjSjLj Box erase j Lj } j Oj%%%O 81Nj%%% +TjOjL(kOjL-kOjOj%%% + >Nj })L*lTj%%% +QjLkPjM% M%LkQjM% M%LkPjQjRjSj /ILk /ILkLk%Rj }%Sj%SjRjQjPj n=Ll%Pj%QjPj#Qj# /ILl /ILkTj%%% +LlSjLl%PjRj }LylPjMjRjZlZlMjLvl%SjQjMj !.MjLOlLlRjMjPjllMjLl%SjQjMj !.MjLlPjQjRjSjL }lTj%%% +ILjLl Box erase l Lm m  :UjUjILOmVj%% }%O k-`Uj UjIcLlLjLzm fm8hmfmtm8imgmum%fm%Lmkmmmtmomvm }Lmfmʹ%%LmkmtmmmomvmLmkmmmtmomȌvm%gm%LnlmnmumpmȌvmLQngmͶ%%L?nlmumnm }pmȌvmLQnlmnmumpmvmmmqmnmrmqmmfmrmmgm +smsmM%Lnsm%mqm%mrm%i } +jmLn%qmmfmrmmgm +vmLoqmMomLoqmmkmqmLormmlmrmmmqmLo%%% +o)Lg }roLfq%o%oo#o# /IL[q /ILBqoLdroI oILq%Mo %ILq%Mo %ILq }ooooo /ILq /ILqLq%o%ooooo n=oLdroILdr%Mo %IL2r%Mo %I }L2roooooLHrooooo wm /ILar /ILHrLssoILrooLrooooooooL }roooooo%o%%o%o#o#oLssoILss8ooo8ooo8Ooʹ%%Ls8Oo% }%8oͶ%%L=s8o%%om%oom%ooo%% n=oooo n=ILpLs Box cop }y s Ls s  :ooILso%o%O k-`L]toIL]toLtoL }to !oL2t$ ΤL7t* Τ& /ILZt /ILAto oIcL}sLpL{t((( }(% 3& I( * I( yLtK:t DYX %vtwtOwtLuvtLtvtLtvt%%% } wt !.wtLt%%O k-ut%'%%Z%Ȍ%%%vt vtL}uvt#vt#vtL]u } 43@Lu Sketch! u Lu By Filip Mulier u ut m8ttutttILu LLpvttILv NNLpv }ttILv QWLpvttIL#v IeLpvttIL3v HLpvttILCv XLpvttILSv XjLpvttILcv @LpvttI Lpv oL}u``xt}}} {QU` QэRx2R XQ \`/Q*Q RyQQQL/RHQ+ *R# }P RˍR̍RQhh@h  ɟ IM+h@˩Pi˥i`} Q QӅ Q $0R%1R Q` S0 KS RzT:T S`T{T Sl QQQR RR$R+R.R6RBRORTRYR^RcRRRRRR}RRJSP8JSISSS 8ISJSΩͩ˩P̠ˑΥR`HDEI BLV}D:PFKEYS.DAT@iRBHIDSEJK V0!RBDPE˝HI V0RH B Vh` S}uperKEY! Processor Installed (c) 1987 Orion Micro Systems@ Unable to Load File PFKEYS.DAT! SuperKEY! Ԡ Installed...}@ T iTT T i$TT`lT T T#TTTTST`RTRRRRRRRRRRRRRRRRRRRRRRRRR}RRRRRRRRRRRRRRRRRRRRRT[!@ri6-&@r{67@,.bTK6.7&,A6-?:C:, -&%7<,46)7<,47>6-@ %+7<,47,M  6-6-@:7,,56-+"@,&+"@5 L H  # hL . > hh@2Kd}9 8HhHH9 `9 ,Ln  x!}     X!"̆͠ ̙V ̍M ̍P 0̙V L V !"` f g e Lh ]]]]]]]]]]]]]]]]]]]]]]]]]]]]]!}]]]]]] 6-@,6-@,7%<%,4 6-@,6-@ G 6- A!67%,.7,167%,.7&, Į͛SPEED is a short m/l program thatallows you to adjust the speed inwhich programs print to the screen(through t%}he E: device only!) Thisshould only affect BASIC, DOSM/L programs that use the CIOto print text. Some programs mayuse the%}ir own handlers, or putcharacters directly to the screen,and won't be affected by SPEED.f you use SPEED with a programth%}at resets the keyboard vector,such as the T:EDIT program, youwill probably have to re-load SPEEDback into memory. You mayb%}e able topress RESET to recover, but thenyou may lock your computer up!To use this program, LOAD it fromDOS. If you are %}using SPARTADOS,just enter SPEED.To control the speed of the output,enter CTRL/SHIFT ##, where ## isa number between 0 a%}nd 9. 0 isthe slowest, and 1 is the fastest.Pressing CTRL/SHIFT CLEAR, willreturn the printing speed to normal.You may h%}ave to adjust the speedto get the one you want. I prefer to use 3, which gives the text anice smooth. Each number increase,%}increases the delay value by 25.A CTRL/SHIFT 1 has a delay valueof 25, CTRL/SHIFT 2 has a delayvalue of 50, and so on. CT%}RL/SHIFT0 has a delay value of 255.To control the speed of the outputthrough a program, just poke thedelay value you wan%}t into location8254 ($203E).That's all there is to SPEED. Ittakes up 193 bytes and residesin memory from 8192 ($2000) to%}8385 ($20C1). It automaticallytraps the reset vector, and adjuststhe memlo pointer ($2E7) toprotect itself.SPEED.ASM is%} the source listingfor SPEED, and can be located justabout anywhere. It was writtenusing the SynAssembler, so youmay have%} to modify the program towork with other assemblers. I didnot provide any documentation,so you'll have to leave me someE-%}Mail if you have any questions. Glenn Smith 70357,1136:::::::::::::::::::::::::%}:::::::::::::::::::::::::::::::::::::::::::::C:,<,+6-?:<< DOW time required for TURBOI and TURBOC (the Compleat Turbo Basic) I've uploaded TBCOM.XMO. Thi)}s is the Turbo Basic interpreter. Rename to AUTORUN.SYS, then boot your XL or XE holding down the OPTION key to disable the i)}nternal Basic. In addition, grab TBHLP.TXT This is a READable text file (in case you want to look before you DOW) that cont)}ains a short summary of new TB commands (if nothing else, you're gonna wanna know about the PAUSE command!) These two files w)}ill get you started. From this point, you can just continue programming using your familiar AB syntax (you do have to watch)} out for new Basic keywords like DIR,MOVE,etc.), and have the programs execute as normal except for a big increase in speed. )}You can also use TB programs written by others that you run across. PHASE TWO There's another side to TB, )}too. And here, alas, the picture ain't quite so bright. As noted, there are a TON of new commands. Unfortunately, the documen)}tation is at present Real Sparse. (And a lot of it is in German, which means that anyone willing to do a translation job will)} win Thousands of Instant New Friends.) Experimenting with the new programming style is only for those who can't resist a c)}hallenge. Kind of like a Big Adventure Game. Note again: you don't have to. But there's some REAL interesting stuff here. F)}or instance: IF-ELSE-ENDIF, WHILE-WEND, REPEAT-UNTIL, and other sorts of 'new' loops. Structured programming commands like P)}ROCEDURE and EXEC (Execute procedure). Some useful extensions to AB like DPEEK and DPOKE to handle lo-byte, hi-byte 'words', )}new GRAPHICS commands (like FILL), built in DOS-type commands (DIR). Plus lots of little conveniences like CLS (Clear Screen))}, SOUND (with no parameters turns off all sound channels), and others too numerous to mention. If you feel like you want to)} get down and do some serious programming, I guarantee that you'll be in for some frustration. That lack of DOCs again. (I wo)}uld KILL for a memory map!) Welcome to the difference between PD and Commercial programs. Comme Il Dit, you get what you pa)}y for. But if you're a Basic hacker at heart, there's fun to be had here. Nothing quite like when your off the wall program)} works, right? What we REALLY need is hundreds of busy little hands exploring and sharing discoveries. We'll be looking for*} your demos. --uncle don ````````````````````````````````@8AF:A,&@(V)6^^<s3>00x|73>00x`c6<9c` 33c366fffg~33>00xgfffff<.}11111{!!\]_\ED!EOHI B V`}   .} TURBO-BASIC XL 1.5 (c) 1985 Frank Ostrowski!  ӥL]""$$ (p.}%J[WܠjeC /D%Zub2gTSt$8®݊Ò2% 5R.}Ţtd.’$3@X7t5w5$?## $#L+D:*.*S:C:P:$#.#) `:#(6ENeU\l؏&/ؕ؄sأ$.}LENeU\lأ$8آǔƐƉƐƇ4cY%٦rULۉCۄړp^gyض%iwܸJڅ*ܣ$ڭڞجئأأ.}$ ,(""(222000000..222222222222222222222222222222**22*22(222(2222222222 ,(""(.}0000000--**2*(22(2222222 V`hh@,lHH$HHHHHHӍl". }H$HHl $`GHFH\` ` 4ӭ l 4Lq ӠԪӅԆL} Ӡ L( . }) ` b% +L:#HH 0 HHLj%ӥHlL{ee 8eee. }eӦee褢%ƚƜ`88夅奅8. }夕奕Ӡȱȱȱ㦢`L+`8` .E)))8@8e0 . }*څۅ܅݅ޅ߄ԠF0y"ޥy"ݥy"ܥy"ۥy"ڥy"و0ǠF0y"ݥy"ܥy"ۥy"ڥy"٥y"؈.}0ǠF0y"ܥy"ۥy"ڥy"٥y"إy"׈0ǠF0y"ۥy"ڥy"٥y"إy"ץy"ֈ0.}ǠF0y"ڥy"٥y"إy"ץy"֥y"Ո0L-`8`E)))8i@0 *ڄԠ.}"("!""" "L**""""""&О"("!"".}" "L**""""""&О"("!""" "L**.}""""""&О"("!""" "L**"""".}""&О"("!""" "L**""""""&Оd.}"("!""" "L**""""""&ОL-6"e".}"e""e""e""e""i""}"""}"""}"""}"""}"""}""ǭ"m"""m".}""m"""m"""m"""m"""}"""}"""}"""}"""}"""}""ǥՅօׅ؅مԅՅօ.}ׅ؅`` ` ` `80 `ԥՅ +.JJJJ)iFiFi1FicFi'ȐȦoFiU.}ȐFiiFi#iFiGi Fii@F iiFiiciՊFigi'iՊօשBL-`I.}))83Ԥԥդե֤֥פץؤإ٤L,K6"ХL--L--L-.}-E0:e٥eإeץe֥eՐ؅٥ׅإօץՅ֩L-8٥إץ֥հ'I8.}م٘؅ؘׅטօ֘ՅL-ؤm\G0Q@Ն֩م؅2եمֆשم"ե؅֥م׆ةեׅ֥.}؅ץم؆لԘ)q +` . |. &7i |. ,%!L?.`刱䈱㈱∱.}ሱ`ԅՅօׅ؅م`ԍՍ֍׍؍ٍ`ԍՍ֍׍؍ٍ`L.L. Խսֽ.}׽ؽ` L%/`ӽޕ &ԅ)@إ)JJJe)e - M.} 1. &Je0F 2 . /L(8`@ԠՈքׄ؄` . |. , . . |. , #/L(8`0 I@ԥ). } 2f / . & r 1. #/ &?P , .Iiԩ +)ԅ ,ӽޕL(`8`$.!})Ԧ61718191:1;1 (ť)8@0$Յ)e)e -F . / , . &1 1.."} #/ &F I`U9>`D'RFuCU?b9dYdg@W2@?tS)%)@0)%ԅԢ / . &G .#} 1.Ӱ6 #/ &.ӽߕ ,ԅԥ B1 (`8``0?i? . . / , #/ &ԍՍ.$}֍׍؍ٍ . . ( / , O2 / ,0 .JeF 2`L+) .e٥eإeץe֥e.%}Պi؊؅٥ׅإօץՅֆե1ԥ'JffffJffffJffffJffffم`ԩ&&&&*&&&&*&&&&*&.&}&&&*`Pi`)JJJeԅԘ)Peԅ`եԆ8@EB)JJJeԅԥ)PeԅԘ)3eԅԽ3eՅ՘)JJJ}3.'}}3`)JJJeԅԥ)PeԅԹ3eԅԹ3eՅդЧ` 0@P`'Nu pX@(#d,X L(  兢.(}0襙 bɥ⥋㩀 50ɥ0DȱȱȄ   ik#ZMkVgğe拰ㅋ.)}⅊0 eee拰 L f5дƨħ 4LY4 f5К,樥ŧH 4h h5L4樤ܱ.* O %30.*}  5Ԅ +(fԤԈ`ř嚰Ԥ`ڥۥड़0-԰eڅڐۈ0eeL+58` .+}O#`,#5  6`]5 6DE 68DHEIHI V0$ 6Sл B.,} V,# 6` $#LllBHI V0HH V0Ԩh``{a$%Ȏ$$xө$Ѝ$ `.-} `@X a Ӆʢ ʎD  _ɠ %` ɩHH `өL: g% D..}:AUTORUN.BASөjJHH`ՠԢӱԙ!ӹ!`֝DEIHB V0Y|ڝDa۝E./}օܥׅݥܝHݝI V0+Ӡڑڑ0`l `  䅠 _ɠԐ.0}e拢 &L &Lħ © ¥4 䥝ň剰' k ɀ8@4= LY ĩ`OJ ]J?L.1} KԪȱLRHHצ R, hhLRHHHHHH /0ȑȑޠhhhhh.2}h`HHHHHHHHHH $H bɐhȥLHhhhhLň剰).3}i桰` )``L(兢ħ #$ x Hҩ h$襚ҥ ԝ`.4} UV #T` ` `,H ¥ȍ` JKhLŢ  #)I L ¤Ȣ`L¦ ¦ Lĩ.5} ½J*K+ $LąLĩ …L~ …`H Ġh é`,H hH Ġ  ĭ 8}}.6} L n [h`LkL © 8倝偝 Ġ  ĥ󥃅  Lĩ LH.7} éLH#h ĩ`H hKJ L+ , H hHHħ s hKhJ  Lĩ# qL .8} ŘL ũ& QŽLM " ĽNL  ĥԝL՝M  ĥԝN%LV  ¤ħ` Ťħ` ƪ Ċ .9}Ťħ` ¢`届 x݅ L ĽCӠɀ L]Ɉ L] Ln LŠI.:}HEDBL$HH hh +L `ħ LĢl ¦`YDAER ԅՅ֦.;}󅗄`L+ ¢p 0 Hp hɈL` ,#,$,!Lé ,H ĥDEԝH՝Ih L.<}©L $`L© , k ĩԅ  + ĥ 夨ħ`2ƪƪ ! A!Ƚa!Ƚ!Ƚ!Ƚ!Ƚ!.=}``氤hhL1@$ƪư 0 0 n$P`L+FҐ֥װ綾إٰو LǠFf.>}ؐ ee&ee* &eeeԪeըee$.ƪ@!Ƚ`!Ƚ!Ƚ!Ƚ!Ƚ!`檦.?}!!!!`!@!^!` Ȅ 8 n奱 ٥Lǥ֤צưĘ=ŗ78֪א& .@} eԥe$`L: L ԅՅօׄ 1פ& ٤ţĢԅeՅe8包卅 ]&.A} 8Ԩժ%אְ`ֆL夨ħ` FҰg8&0ei֥i0Tׅiإi0BJe؅eم0&f.B}fff&0 &0 eeL+օפإ颎 %8包ԥ卅 L ɥ .C}ȱъŠe拰8``,ªȱȱI ѝ3ȥLɥHHO].D}  ȥe暰Х ȥL+ʅȱhh`Lħ OԪȱԨ``L :0.E} `L(奷 bɥ󥋅ȱȱȱȄ#鈄0B8eeŶ.F}ɛ,@LBˤ,ɛ`L?± ˤ樱f Oƨ x݅ + ~ [ˠ O樥0# +  L˥`.G}LL :ɛ,$PH h $P润䧰 ʐLʦ䧐 +` ʐL3LBˢ.H}ԝD՝E֝HםI L 兢L]& 兢L% ,L6 ,L6 &L6 (L6妪@!I@!` ؐb`P KW ؐRB ؐ.I}=;G ؐ4@ ;+ƪƪ@!=A! (ƪƪ@!A! ƪ@! ,@@檦@!`!!!!!!`ƪ@! ǩjҤ.J} /L.٤ƪƪ@!@!, 舽`!`!!ـ!!٠!!!!!`@!jI*` . ֪ (.K}ϰ`(8` ֤ׅԄ +҅L: Lyƪ8吪周Ly sũ + ŐL Ly sŠԄ h L}.L} L}٩    e쪽pLyL( + ڥHJJJJ h) 0:i`  ک; n +ȱ)ȥ%.M}ݓ Lh ԍՅԄׅ֩өL:ƪ?Ԣ )ɠ )  -L &Lڦ@!)@!` n)8@.N} -L:` / n)8@I= n)8@/ѩ֔$ሄ ,L: + n 0L8 n.O} 0L8 n H1L8 n /L8 n /L8 n D/L8 n 1L8LLإL( &)ԥ)8@JjH@.P}MC)JJJe)e .F / .P . &F . #/ &L.L(HHHHHH /hhhhhh &.Q} Y/hԅL:,` L _ܘ%ᨥ%Ly _ܘᨥLy _ܘEᨥELyٚ<|'g 0L`.R}!!!!i ` &LإL٥LyɥLzvmZ ƨ!0 4 䦵 ¥ԝD՝E֝Heם.S}I Lܤį eį L` x݅ƨLLLܤ ©`#ۢ Lĩ_,ߤ.T} ڄ . eڅԥeۅհ"8څ֥ۅא8ܥݰL۠Q%0ԅإՅ٥ަ0%Q% .U}L-ե0LޥڤLyمօנ6&֐ eו`L( Hħ hբՅ `ޥԢ `ޥՅ֠.V}&&֐eܥeېڈ 7 \ 7 j N \ N j$0!ee80å/8ܥ۰uڕ0.W}eUiV`TUV`8UV`eTi`8TȢ` $L„')Q ȱ8 e.X}新`8`L齀).Q Ӱȱ8e新 O :L䅫# *$Ŭ.Y} Ʃ HL"䥫ș L` Ml/#樱0ZS'`ȱȱȱȱȱȱȄ`ȱօȘuԩׅu՘e֨҄`.Z}I 屝Ҡȱȱȱȱȱ` n$҅J?eԨe` L 兙 兛 n %3 Ԥ` ҩ,.[} , , L檤 ٙ!ؙ!י!֙!ՙ`!ԙ@!ә !ҙ!` 䤪ƪ!ٹ!ع!׹!ֹ`!չ@!Թ !ӹ!`ƪ!!.\}!㹁!a!A!Lp ґȥӑȥԑȥՑȥ֑ȥבȥؑȥّ` ***j)e)e`ʭȅiȅ.]}iȅȩȩ Lfإ  4  \ +] ¥򄟄.^}   넨ɛ$0L祔 Z f0#ڠ쩀 ߩ6ei$0 녖چ + !5._}ɛȑ @膔7 ɛ 襔!ɛL! _ɩ8$IȢ %e拢 .`} &!$P* &8孨客 "&$ 1L~ L~ &L _ɰe拢 &L~ +0 %30Ԅ .a}L 9:枢0 O L :H9Hhh tLHH`h.b}hLCL馩`ʆLC枢0ְşLC`A枢Ɣ!L!L.c}!T 򈩛LQLD ijq ߰,iŰD VD8` 覲`8` 넬 S( +饰.d}0 S0:$$ p8`$p (ȩ@҅ҥ򄬤 ߰ A L8򨢄 %Ӥ򈦬ʽ ʽ % .e}+HH 屝EҨhh$P0Ƭ 襯I `_A[`8`80 &Ոԅ.f}` 넬$ +  + h갳 h) + , 褔ԙ!` "8` 襔 ɛ "ȱ".g}嫤!`! `) ɛ%)a{)_0:A[_դ`RE͕DATINPUԑCOLOҝLISԖENTEҚLEԛIƜFO.h}NEXԑGOTϑGO TϑGOSU½TRAАBYŐCONԞCO͟CLOSŐCLҐDEǞDI͐ENĐNEנOPEΖLOAĖSAVŢSTATUӣNOTPOINԡXIϤOΒPOKťPRINԐRAęREA.i}ĨRESTORŐRETURΩRUΐSTOАPOХGEԫPUԑGRAPHICӒPLOԒPOSITIOΐDOӒDRAWTϓSETCOLOҬLOCATŔSOUNĦLPRINԐCSAVŐCLOAĚERROR- .j}DPOKœMOVœ-MOVŪ*ƐREPEAԑUNTȊWHILŐWENĐELSŐENDIBPUBGEԒFILLTϐDϐLOOШEXIDIҖLOC˖UNLOC˖RENAMŖDELETőPAUSŖTI.k}ME$PROøEXEÐENDPROÑFCOLOҪ*̕-RENU͒DEDUMЪTRACTEXԖBLOAĖBRUθGO*’PAINԟCLӔDSOUNCIRCLū%PUԘ%GEԚG.l}OTGOSUTSTETHEΣ<<>ުNOOANĨ<<>STRCHRUSASVALEADATCOPEESIRNFREXLOCLOSQSGABIN.m}PADDLSTICPTRISTRIDPEE˦INSTINKEYEXOHEXDEDIFRATIMETIMMOEXERNRANTRUN%%%%GOUINSTERER+,%5.n}&6(+8,<Xk`fghilm^deDѳHc?,Ќ,е,Y_Ҳ+7,/0.o}1 2!3"4Ɛ"-"."-؂ٿ֐ː.p}ĐאŐbj+9,+;,ʐͭ.q}ͭ@ABC\=>[<+:е<,&%rvnnxc<\.r}-78s_XV+@D&0d*"'2GJh N.s}Rl~&2 +饰(+VWZ ]a8`L`  ¤ħ.H h L5 䄡 .t} 䅭 bɠ04Ů .ŭ%) e拰 ĩ L+Ư0 Le.u}`毤Hɛ) h`  L ȱ R @ʆ ȱȄ Iğ` :62T F :.v}7 8 Lbԩ- L 8 8,I ɨ 8L.UH `ƨh $ %3   + \L L 8󅯩" .w} 8" ©" Ư" L8q :Z#]abj(=) W같  L樤ħ`hh`H YhZ .x}L<>EO ƹƹ0`H f5h`I&` =? FQA` L񄳱ȱI 䦐.y}Ħ ąŅ T k /䧰 k ,Ǡ ĩJH ThĥȑĥȑĦʊȑ`HHąŅ.z}H h hhhh ȱIELZ L`ȱI Hȱȱȱȱȱ .{}, h @ $L+L.*ȱȱȱȱȱjEE `EjI `e`ħ ¥.|}0 ` Lk 䦪`! 䧰L A@L `I&`L ©؅ L..}}0`STOPPED륺 bɠhhL :ʅ` k %3Hƹ h5h`hbjH h #.~}ԤLQ #LLei  `LԑȥՑȥ֑ȥבȥؑȥّ``䈥剰.}#)iiLɠL4űI&`048ץğ=ȱȄ .}`L  L0e拠0ȱȄL  䦪`!' >?L (<ж`!  $Л +`,LőŐ78Ƒ8 Ƒ`8` - PѠ.}`,,L L PQ 8,L ȱI ѝߠȱ`ԩ.},L E  $EL+L],,,؍ 0âLɀL ©7 F󦹩 RbL g .}0g `Ո V fL{Ն + +􅕄L AT LINE?BLOAMEVALU>#VAR$LE?DAT>3276INPUDISTACOVERFLO?LIN?.}FOTOO LON?DE?GOSUGARBAG?CHMEͣ?LOA?NES?WHIL?REPEA?D?EXIXPRO?EXE?PRO?IS OPE?DEWR ONLCMNOT OPEΣRD ONLEOT.}RUNTIMEOUNA!FRAMCURSO!OVERRUCHKSUDONMODNOT IMPRA͠D?>#FILEDSK FULFATAL I/FILENAMPOINLOCKEDCM>DI.}?FILPOIN?APPNBAD SECTORӥHՄ +h & .hԩ + ,҅L: ƪn (@Մ$ 0` 0.}` 0LoH - . /h &@Յ՘JJJJ X) 0:i`AVC2 sŠ 5  <)  <.} L L + e +e`e`&&&&&&eee` &.}&eee&*`` 兙 䦪!0 4 ۄܱ **m ݤܱEۅڦڱ= .} ܥeƥiեLN@ ` **)]` 00`` ( ((((((((8.}`W)ߥ & &e &߽řِ׼JJJJ&eXޥeYߥ䥛 9 FfЎᰈ .} `  M 8*` 兙 󥐅i祣L{ &L.}  0 & L ȑ & L; # )ȱ L .})ȱ) )ȱ 8ƣŐő0eސ`ƙ8ް`)ȱJJJ`.}``=`]``` E߭H Ġ} hL±&Lv`[  ȱ R] .} L L  䅠 bɰhhğȱȄ L l"0e拱LjLx888888888888888888888.}888888888888888888888888888888888888888888888888888,334RJIFFIETIMENEXLASJIFFSECONDMINUTEHOURDAY2} dDEMO TIME SUBROUTINEn A  SETUP SUBROUTINExA;@,;@,,67@2},.XAMUST SETUP LENGTH!(}DEMO TIME SUBROUTINEB(((PRESS FOR ELAPSED TIME>(FROM LAST B2}6-?:C:,