1 REM *******************************************
2 '
3 '               ACCOUNTS PAYABLE
4 '                 Version 2.0
5 '
6 '   WRITTEN BY BRUCE LEVISON
7 '   SEPTEMBER 1979
8 '
9 REM *******************************************
10 '
12 ' 01/10/81	Fixed the bug in the initialization routine
13 '		by adding the automatic initilization
14 '		of data files when they are empty. The program
15 '		now takes care of the initialization automatically. (BL)
16 '
100 WIDTH 64
120 YES=-1 : NO=0 : ESCAPE=1
170 HD$="AC.#        ACCOUNT                TOTAL      BALANCE   DATE DUE"
180 HC$="AC.#        ACCOUNT               PAYMENT     CHK NUM   CHK DATE"
190 SP$="----  --------------------       ---------   ---------  --------"
200 TR$=STRING$(64,45)
205 M1$="MENU.FIN"
210 F1$="CURRENT.PAY" : F2$="HISTORY.PAY"
220 F6$="########"
230 F5$="####"
240 F9$="\                       \"
250 F8$="$$#####.##"
260 F7$="\      \"
262 Z$=F1$: GOSUB 50000	'Initialize files to empty if
266 Z$=F2$: GOSUB 50000 'necessary
270 PRINT: AF=1 : GOSUB 2600: DATE$=Z$: 'INPUT DATE
280 PRINT CHR$(12);STRING$(2,10)
290 PRINT "ACCOUNTS PAYABLE SYSTEM";TAB(50);DATE$
300 PRINT:PRINT
310 PRINT "ALLOWABLE OPTIONS ARE:"
320 PRINT
330 PRINT "A=ENTER A NEW ACCOUNT";TAB(36);"B=ENTER A NEW BILL"
340 PRINT "C=PAY A BILL";TAB(36);"D=PAYMENT (NOT WITH BILL)"
350 PRINT "E=PRINT BILLS DUE THIS MONTH";TAB(36);"F=LIST CURRENT ACCOUNTS"
360 PRINT "G=LIST ACCOUNT HISTORY";TAB(36);"H=LIST SPECIFIC ACCOUNT"
370 PRINT "I=EDIT AN ACCOUNT";TAB(36);"J=RUN SYSTEM MENU"
375 PRINT "K=END PROGRAM"
380 PRINT:PRINT:PRINT:PRINT
390 PRINT "OPTION (?=LIST OPTIONS) ? "; : OP$=INPUT$(1): PRINT OP$
400 IF OP$="?" THEN 280
410 OP=ASC(OP$)-64
420 IF OP < 1 OR OP > 11 OR OP<>INT(OP) THEN 390
430 ON OP GOSUB 1000,2000,3000,4000,5000,6000,7000,8000,8500,20000,25000
440 PRINT: PRINT: TT=0: AF=0: FL=0: Z=0: Z$="": CLOSE
445 BALANCE=0: BALANCE$="": TOTAL.DUE=0: TOTAL.DUE$=""
450 GOTO 390
1000 '


		ENTER A NEW ACCOUNT


1010 PRINT: LINE INPUT "ACCOUNT NAME ? "; ACCOUNT.NAMEX$ : IF ACCOUNT.NAMEX$="ESCAPE" THEN RETURN
1020 INPUT "CLASSIFICATION TYPE NUMBER ? ", Z$ : IF Z$="?" THEN GOSUB 3810 : GOTO 1020
1030 IF VAL(Z$)<0 OR (VAL(Z$)>25 AND VAL (Z$)<>99) OR VAL (Z$)<>INT(VAL(Z$)) THEN PRINT: PRINT "No such classification number": PRINT: GOSUB 3810: GOTO 1020
1040 TYPE=VAL(Z$)
1050 OPEN "R",1,F1$,64 : GOSUB 9000 : 'FIELD
1060 GET #1,1 : WREC = VAL(WREC$)
1070 TOTAL.DUE=0 : BALANCE=0 : DUE.DATEX$="" : ACCOUNT.NO=WREC -1
1080 GOSUB 10000 : GOSUB 10500 : 'PUT & INCREMENT
1090 PRINT : PRINT "ACCOUNT NUMBER"; ACCOUNT.NO; "ASSIGNED"
1100 CLOSE : RETURN
2000 '


		ENTER NEW BILL TO BE PAID


2010 OPEN "R",1,F1$,64 : GOSUB 9000 : AF=2 : GOTO 12000: 'FIELD + INPUT ACCOUNT NO.
2020 INPUT "AMOUNT OF BILL ? ", TOTAL.DUE
2030 AF=2 : GOSUB 2600 : 'INPUT DATE
2040 DUE.DATEX$=Z$: BALANCE = VAL(BALANCE$) + TOTAL.DUE
2050 PRINT "NEW BALANCE IS";: PRINT USING F8$;BALANCE
2060 GOSUB 10000 : CLOSE : RETURN
2400 '


		YES/NO


2410 RESPONSE$=INPUT$(1): PRINT RESPONSE$
2420 ANSWER = 2
2440 IF LEFT$(RESPONSE$,1) ="Y" THEN ANSWER=YES
2450 IF LEFT$(RESPONSE$,1)="N" THEN ANSWER=NO
2460 IF LEFT$(RESPONSE$,1)="E" THEN ANSWER=ESCAPE: GOTO 440
2470 IF ANSWER<>2 THEN RETURN
2480 PRINT : PRINT "Please respond 'YES' or 'NO'";
2490 GOTO 2410
2500 '


		ACCOUNT NOT FOUND


2510 PRINT : PRINT "ACCOUNT NOT FOUND"
2520 GOSUB 3700: RETURN: 'PRINT ACCOUNT NUMBERS TO CRT
2600 '


		CHECK DATE


2605 IF AF=1 THEN INPUT "TODAYS DATE ? ",Z$
2610 IF AF=2 THEN INPUT "DUE DATE ? ",Z$
2620 IF AF=3 THEN INPUT "DATE OF PAYMENT ? ",Z$
2630 IF AF=4 THEN INPUT "DATE OF CHECK ? ",Z$
2640 IF AF=5 THEN INPUT "DATE PAYED ? ",Z$
2650 IF AF=6 THEN INPUT "DATE WRITTEN ? ",Z$
2660 IF LEN(Z$)=0 AND AF<>1 THEN Z$=DATE$ : GOTO 2680
2670 IF LEN(Z$)<>8 OR MID$(Z$,6,1)<>"/" THEN PRINT : PRINT "FORMAT IS mm/dd/yy" : GOTO 2600
2680 AF=0 : RETURN
2700 '


		PRINT CRT HEADER


2705 PRINT CHR$(12): PRINT: PRINT
2710 PRINT TAB(5);Z$;TAB(46);"DATE: ";DATE$ :PRINT : PRINT
2715 IF FL=1 THEN PRINT HC$: PRINT SP$: RETURN
2720 PRINT HD$ : PRINT SP$: RETURN
2750 '


		PRINT LINE PRINTER HEADERS


2760 LPRINT CHR$(14); : LPRINT TAB(1);Z$; : LPRINT CHR$(15); : LPRINT TAB(34);"DATE: ";DATE$ : LPRINT : LPRINT
2765 IF FL=1 THEN LPRINT HC$: LPRINT SP$: RETURN
2770 LPRINT HD$ : LPRINT SP$: RETURN
2780 '


		PRINT TRAILER


2790 PRINT TR$: RETURN
2795 '


		PRINT LPRINTER TRAILER


2800 LPRINT STRING$(64,"-"): RETURN
3000 '


		PAY A BILL


3010 OPEN "R",1,F1$,64 : GOSUB 9000 : AF=3 : GOTO 12000
3020 BALANCE=VAL(BALANCE$)
3030 PRINT "BALANCE DUE IS";: PRINT USING F8$;BALANCE
3040 INPUT "AMOUNT OF PAYMENT ? ",Z
3050 PRINT "PAYMENT BY CHECK "; : GOSUB 2400 : IF ANSWER=YES THEN GOTO 3100
3060 CHECK.NO=0
3070 AF=3 : GOSUB 2600 : 'INPUT DATE
3090 GOTO 3130
3100 INPUT "CHECK NUMBER ? ", CHECK.NO
3110 AF=4 : GOSUB 2600: ' INPUT DATE
3130 DUE.DATEX$=Z$ : BALANCE=BALANCE-Z : TOTAL.DUE=VAL(TOTAL.DUE$)
3140 GOSUB 10000 : CLOSE : 'PUT
3150 OPEN "R",1,F2$,64 : GOSUB 9000 : GET#1,1 : WREC=VAL(WREC$)
3160 TOTAL.DUE=Z : BALANCE=CHECK.NO
3170 GOSUB 10000 : GOSUB 10500 : 'PUT/INCREMENT
3180 CLOSE : RETURN
3420 '


		RECORD WRITE TO CRT SUBROUTINE


3440 PRINT USING F5$;VAL(ACCOUNT.NO$); : PRINT "  ";
3450 PRINT USING F9$;ACCOUNT.NAME$;
3460 PRINT USING F8$;VAL(TOTAL.DUE$); : PRINT SPC(2);
3470 IF FL=1 THEN PRINT " ";: PRINT USING F6$;VAL(BALANCE$); : PRINT SPC(4); : GOTO 3490
3480 PRINT USING F8$;VAL(BALANCE$);: PRINT SPC(3);
3490 PRINT USING F7$;DUE.DATE$
3500 RETURN
3520 '


		PRINT ON LINE PRINTER SUBROUTINE


3530 LPRINT USING F5$;VAL(ACCOUNT.NO$); : LPRINT SPC(2);
3540 LPRINT USING F9$;ACCOUNT.NAME$;
3550 LPRINT USING F8$;VAL(TOTAL.DUE$); : LPRINT SPC(2);
3560 IF FL=1 THEN LPRINT " ";: LPRINT USING F6$;VAL(BALANCE$); : LPRINT SPC(4); : GOTO 3580
3570 LPRINT USING F8$;VAL(BALANCE$); : LPRINT SPC(3);
3580 LPRINT USING F7$;DUE.DATE$
3590 RETURN
3700 '


		PRINT ACCOUNT NUMBERS TO CRT


3710 OPEN "R",3,F1$,64: FIELD #3,4 AS AA$,4 AS BB$,30 AS CC$: PRINT
3720 PRINT "Account numbers are: ": PRINT: GET #3,1: WREC=VAL(AA$): RECORDS=1
3725 PRINT USING F5$;YES;: PRINT " = ";: PRINT USING F9$;"MICELLANEOUS",
3727 PRINT USING F5$;NO;: PRINT " = ";: PRINT USING F9$;"CASH",
3730 WHILE (WREC-1)-RECORDS<>0
3740 RECORDS=RECORDS+1: GET #3,RECORDS
3750 PRINT USING F5$;VAL(BB$); : PRINT " = "; : PRINT USING F9$;CC$,
3760 WEND
3770 CLOSE #3: PRINT: PRINT
3780 RETURN
3810 '


		PRINT TYPE CLASSIFICATION NUMBERS TO CRT
3820 '
3830 PRINT: PRINT "CLASSIFICATIONS ARE." : PRINT
3840 PRINT "0-CASH";TAB(30);"1-GROCERY & DRUGIST"
3850 PRINT "2-CLOTHS";TAB(30);"3-DRY CLEANERS"
3860 PRINT "4-CREDIT CARDS";TAB(30);"5-MORGATGE & UTILITIES"
3870 PRINT "6-TELEPHONE";TAB(30);"7-DOGS"
3880 PRINT "8-DOCTORS";TAB(30);"9-DENTIST"
3890 PRINT "10-BEAUTY (HAIRDRESSER)";TAB(30);"11-SUBSCRIPTIONS"
3900 PRINT "12-CHARITY";TAB(30);"13-TAXES/FED"
3910 PRINT "14-TAXES/STATE";TAB(30);"15-LARGE PURCHASE"
3915 PRINT "16-HOUSEKEEPER";TAB(30);"17-WORK RELATED"
3920 PRINT "18-INSURANCE";TAB(30);"19-JEWLERY"
3924 PRINT "20-GIFTS    ";TAB(30);"21-AUTOMOBILE"
3925 PRINT TAB(13);"99-MISCELLANEOUS"
3928 REM IF YOU ADD MORE THAN 25 CLASSIFICATION TYPES LINES 1030 AND 4050 MUST BE CORRECTED
3929 PRINT
3930 RETURN
4000 '


		PAYMENT (NOT WITH BILL)


4010 PRINT : PRINT "FOR 'CASH','MISCELLANEOUS' OR 'ACCOUNT' ? "; : OP$=INPUT$(1): PRINT OP$: IF LEFT$(OP$,1)="E" THEN RETURN
4020 IF LEFT$(OP$,1)="A" THEN GOTO 4210
4030 IF LEFT$(OP$,1)="C" THEN GOTO 4080
4032 IF LEFT$(OP$,1)<>"M" THEN PRINT "You must enter 'C','M' or 'A'": GOTO 4010
4035 '

		Micellaneous
4040 INPUT "CLASSIFICATION TYPE NUMBER ? ",Z$ : IF Z$="?" THEN GOSUB 3820: GOTO 4040
4050 IF VAL(Z$)<0 OR (VAL(Z$)>25 AND VAL(Z$)<>99) OR VAL (Z$)<>INT(VAL(Z$)) THEN PRINT : PRINT "No such classification number" : PRINT: GOSUB 3810: GOTO 4040
4060 TYPE=VAL(Z$) : ACCOUNT.NO=-1
4070 INPUT "FOR WHAT (Payee) ? ",ACCOUNT.NAMEX$
4075 '

		Cash
4080 PRINT "PAYMENT BY CHECK ? "; : GOSUB 2400
4085 IF LEFT$(OP$,1)="M" THEN 4100
4090 ACCOUNT.NO=0 : ACCOUNT.NAMEX$="CASH" : TYPE=0
4100 IF ANSWER=YES THEN GOTO 4130
4110 INPUT "AMOUNT OF PAYMENT ? ", TOTAL.DUE : BALANCE=0
4120 AF=5 : GOSUB 2600 : GOTO 4160
4130 INPUT "AMOUNT OF CHECK ? ", TOTAL.DUE
4140 INPUT "CHECK NUMBER ? ", BALANCE
4150 AF=6 : GOSUB 2600 : 'INPUT DATE
4160 DUE.DATEX$=Z$
4170 OPEN "R",1,F2$,64 : GOSUB 9000
4180 GET #1,1 : WREC=VAL(WREC$)
4190 GOSUB 10000 : GOSUB 10500 : 'PUT & INCREMENT
4200 CLOSE: PRINT: PRINT "ANOTHER WITHOUT A BILL ? ";: GOSUB 2400: IF ANSWER=YES THEN 4000 ELSE RETURN
4205 '

		Account
4210 OPEN "R",1,F1$,64 : GOSUB 9000 : 'FIELD
4220 AF=4 : GOTO 12000 : 'INPUT ACCOUNT#
4260 CLOSE
4270 PRINT : PRINT "PAYMENT BY CHECK ? "; : GOSUB 2400 : GOTO 4100
5000 '


		BILLS DUE THIS MONTH


5005 PRINT "TTY ? ";: GOSUB 2400: IF ANSWER=YES THEN AF=1
5010 OPEN "R",1,F1$,64 : GOSUB 9000 : 'OPEN AND FIELD
5030 Z$="BILLS DUE THIS MONTH"
5040 IF AF=1 THEN GOSUB 2750 : 'PRINT LPRINTER HEADER
5050 GOSUB 2700 : 'PRINT CRT HEADER
5060 TT=0 : GET #1,1
5070 FOR WREC=2 TO VAL(WREC$)-1
5080 GET #1,WREC
5090 IF VAL(BALANCE$)=0 THEN 5110
5100 IF LEFT$(DUE.DATE$,2)<=LEFT$(DATE$,2) THEN GOSUB 3420 : TT=TT+VAL(BALANCE$) : IF AF=1 THEN GOSUB 3520
5110 NEXT WREC : GOSUB 2790: IF AF=1 THEN GOSUB 2800: 'PRINT TRAILER
5120 IF AF=1 THEN LPRINT TAB(44);: LPRINT USING F8$; TT: LPRINT CHR$(12)
5130 PRINT TAB(44);: PRINT USING F8$; TT: PRINT
5140 CLOSE: RETURN
6000 '


		LIST CURRENT ACCOUNTS


6010 PRINT "PRINT ON TTY ? ";: GOSUB 2400: IF ANSWER=YES THEN AF=1
6020 OPEN "R",1,F1$,64: GOSUB 9000: Z$="CURRENT ACCOUNTS"
6030 IF AF=1 THEN GOSUB 2750: 'LPRINT HEADER
6040 GOSUB 2700: 'PRINT HEADER
6050 TT=0: GET #1,1
6060 FOR WREC=2 TO VAL(WREC$)-1
6070 GET #1,WREC: TT=TT+VAL(BALANCE$)
6075 IF AF=1 THEN GOSUB 3520
6080 GOSUB 3420
6090 NEXT WREC
6100 GOSUB 2790: 'PRINT TRAILER
6110 IF AF=1 THEN GOSUB 2800: LPRINT TAB(44);: LPRINT USING F8$;TT: LPRINT CHR$(12)
6120 PRINT TAB(44);: PRINT USING F8$;TT
6125 PRINT STRING$(3,23)
6130 CLOSE: RETURN
7000 '


		LIST ACCOUNT HISTORY


7010 PRINT "PRINT ON TTY ? ";: GOSUB 2400: IF ANSWER=YES THEN Z=1
7015 OPEN "R",1,F2$,64: GOSUB 9000
7020 AF=5: GOTO 12000: 'INPUT ACCOUNT NUMBER
7030 Z$="ACCOUNT HISTORY": TT=0: FL=1
7050 IF Z=1 THEN GOSUB 2750: 'LPRINT HEADER
7060 GOSUB 2700: 'PRINT HEADER
7070 GET #1,1
7080 FOR WREC=2 TO VAL(WREC$)-1
7090 GET #1,WREC
7100 IF VAL(ACCOUNT.NO$)=ACCOUNT.NO THEN GOSUB 3420: TT=TT+VAL(TOTAL.DUE$): IF Z=1 THEN GOSUB 3520
7110 NEXT WREC
7120 GOSUB 2780: IF Z=1 THEN GOSUB 2800: LPRINT TAB(32);: LPRINT USING F8$;TT: LPRINT CHR$(12)
7130 PRINT TAB(32);: PRINT USING F8$;TT: PRINT
7140 CLOSE 1: RETURN
8000 '


		LIST SPECIFIC ACCOUNT


8010 PRINT "TTY ? ";: GOSUB 2400: IF ANSWER=YES THEN FL=1
8020 OPEN "R",1,F1$,64: GOSUB 9000: AF=8: GOTO 12000
8025 Z$="SPECIFIC ACCOUNT"
8030 GOSUB 2700: GOSUB 3420: IF FL=1 THEN GOSUB 2750: GOSUB 3520: GOSUB 2800
8040 GOSUB 2780
8050 CLOSE: RETURN
8500 '


		EDIT AN ACCOUNT


8510 PRINT: PRINT "IS IT A CURRENT ACCOUNT TO BE EDITED ? ";: GOSUB 2400: IF ANSWER=NO THEN GOTO 8570
8520 OPEN "R",1,F1$,64: GOSUB 9000
8530 AF=6: GOTO 12000: 'GET ACCOUNT NUMBER
8540 PRINT: GOSUB 3420: PRINT TYPE$: 'PRINT TO CRT
8550 PRINT: PRINT "THIS TO BE EDITED ? ";: GOSUB 2400: IF ANSWER=NO  THEN 2500: GOTO 8500
8560 GOTO 8650
8570 FL=1: OPEN "R",1,F2$,64: GOSUB 9000
8580 AF=7: GOTO 12000: 'GET ACCOUNT NUMBER
8590 GET #1,1: Z=VAL(WREC$)
8600 FOR WREC=2 TO Z
8610 GET #1,WREC: IF ACCOUNT.NO=VAL(ACCOUNT.NO$) THEN PRINT: GOSUB 3420: PRINT TYPE$: GOTO 8640
8620 NEXT WREC
8630 PRINT: PRINT "ACCOUNT NOT FOUND": CLOSE: GOTO 8500
8640 PRINT: PRINT "THIS TO BE EDITED ? ";: GOSUB 2400: IF ANSWER=NO THEN 8620
8650 PRINT "CHANGE WHAT FIELD ? ";: Z$=INPUT$(1): PRINT Z$: IF VAL(Z$)<1 OR VAL(Z$)>6 THEN PRINT: PRINT "The fields are numbered 1 thru 6": GOTO 8650
8660 Z=VAL(Z$)
8670 IF Z=1 THEN PRINT "ARE YOU SURE YOU WANT TO CHANGE THE ACCOUNT NUMBER ? ";: GOSUB 2400: IF ANSWER=N0 THEN 8650
8675 PRINT "RETYPE FIELD";Z;
8680 IF Z=1 THEN INPUT ACCOUNT.NO: LSET ACCOUNT.NO$=STR$(ACCOUNT.NO)
8690 IF Z=2 THEN INPUT ACCOUNT.NAMEX$: LSET ACCOUNT.NAME$=ACCOUNT.NAMEX$
8700 IF Z=3 THEN INPUT TOTAL.DUE: LSET TOTAL.DUE$=STR$(TOTAL.DUE)
8710 IF Z=4 THEN INPUT BALANCE: LSET BALANCE$=STR$(BALANCE)
8720 IF Z=5 THEN INPUT DUE.DATEX$: LSET DUE.DATE$=DUE.DATEX$
8730 IF Z=6 THEN INPUT TYPE: LSET TYPE$=MID$(STR$(TYPE),2)
8740 PUT #1,WREC: CLOSE: RETURN
9000 '


		FIELD


9010 FIELD #1, 4 AS WREC$,4 AS ACCOUNT.NO$,30 AS ACCOUNT.NAME$,8 AS TOTAL.DUE$,8 AS BALANCE$,8 AS DUE.DATE$,2 AS TYPE$
9020 FIELD #1,64 AS ZZ$
9030 RETURN
10000 '


		PUT DATA RECORD


10010 LSET ZZ$=STRING$(64,CHR$(32))
10020 LSET WREC$=STR$(WREC)
10030 LSET ACCOUNT.NO$=STR$(ACCOUNT.NO)
10040 LSET ACCOUNT.NAME$=ACCOUNT.NAMEX$
10050 LSET TOTAL.DUE$=STR$(TOTAL.DUE)
10060 LSET BALANCE$=STR$(BALANCE)
10070 LSET DUE.DATE$=DUE.DATEX$
10080 IF LEFT$(STR$(TYPE),1)=" " THEN LSET TYPE$=MID$(STR$(TYPE),2) ELSE LSET TYPE$=STR$(TYPE)
10090 PUT #1,WREC : RETURN
10400 '


	INCREMENT AND PUT NEXT AVAILABLE RECORD COUNTER


10500 LSET ZZ$=STRING$(64,CHR$(32))
10510 LSET WREC$=STR$(WREC+1)
10520 PUT #1,1 : RETURN
12000 '


		INPUT ACCOUNT NUMBER AND GET RECORD


12010 PRINT: INPUT "ACCOUNT NUMBER ? ",Z$ : IF LEFT$(Z$,1)="E" THEN CLOSE : RETURN
12020 IF LEFT$(Z$,1)="?" THEN GOSUB 3700: GOTO 12010
12030 IF VAL(Z$)=0 AND (AF=2 OR AF=3 OR AF=4) THEN PRINT: PRINT "You've entered a value that evaluates to zero": PRINT "Enter a NUMBER that is greater than zero.": PRINT SPC(21);"or": PRINT "If the account is CASH then use OPTION D.": GOTO 12010
12035 IF AF=7 THEN ACCOUNT.NO=VAL(Z$): AF=0: GOTO 8590
12050 ACCOUNT.NO=VAL(Z$) : WREC=ACCOUNT.NO+1
12055 IF AF=5 THEN 12075
12060 GET #1,WREC
12070 IF LEFT$(ACCOUNT.NAME$,1)=CHR$(0) THEN GOSUB 2500 : GOTO 12010
12075 IF AF=5 THEN ACCOUNT.NO=VAL(Z$): AF=0: GOTO 7030
12076 IF AF=6 THEN AF=0: GOTO 8540
12077 IF AF=8 THEN AF=0: GOTO 8025
12080 PRINT : PRINT "ACCOUNT NUMBER";ACCOUNT.NO;"IS ";ACCOUNT.NAME$
12090 PRINT "CORRECT ? "; : GOSUB 2400 : IF ANSWER=NO THEN GOTO 12010
12100 ACCOUNT.NAMEX$=ACCOUNT.NAME$ : TYPE=VAL(TYPE$)
12110 IF AF=2 THEN AF=0 : GOTO 2020
12120 IF AF=3 THEN AF=0 : GOTO 3020
12130 IF AF=4 THEN AF=0 : GOTO 4260
20000 '


		RUN SYSTEM MENU


20010 CLOSE
20020 RUN M1$
25000 RESET: END
50000 '


		INITIALIZE FILES TO EMPTY


50005 OPEN "R",1,Z$,64
50010 IF LOF(1)>0 THEN CLOSE: RETURN
50013 PRINT
50014 PRINT "Initializing ";Z$
50020 FIELD #1,4 AS WREC$,60 AS ZZ$
50030 LSET WREC$="2": PUT #1,1
50040 CLOSE: RETURN
INT
50014 PRINT "Initializing ";Z$
50020 FIELD #1,