0 'Written by Don Corbitt Revised Edition Software 2033 N 650 W Provo, UT 84604 For personal use only. Not for resale. 1 CLS:MAXFILES=1:E$=CHR$(27):PRINT@280,E$"PFind New Save Print Stop Menu"E$"T":PRINT@84,E$"pTRS-80 Envelope Printing Program"E$"q" 2 KEYON:ONKEYGOSUB10,20,30,,50,,70,80 3 ONERRORGOTO500:GOSUB40 4 GOTO4 5 I$=INPUT$(1):PRINTI$:RETURN 6 KEYON:FOUND=0:RETURN 10 KEYSTOP:GOSUB28:LINEINPUT"Search for:";N$ 11 CLOSE:OPEN"adrs"FORINPUTAS1:FORX=1TON:LINEINPUT#1,I$:NEXTX 14 IFEOF(1)THENGOSUB100:IFFOUNDTHENGOTO6ELSEPRINT"No match":L=0:GOTO6 15 L=L+1:LINEINPUT#1,A$(L):IFINSTR(A$(L),N$)THENFOUND=-1 16 IFA$(L)<>""THEN14ELSEGOSUB100:IFFOUNDTHENGOTO6ELSEGOTO14 20 KEYSTOP:GOSUB28:C=0:PRINT"Type new address. empty line when done." 21 LINEINPUTA$(C+1):IFA$(C+1)<>""THENC=C+1:GOTO21 22 PRINT"Correct(Y/N)?";:GOSUB5:IFINSTR("Yy",I$)THENN=-1:PRINT"recorded":L=C:GOTO6ELSEGOTO20 28 IFNOT(NORC)THENRETURNELSECLS:FORX=1 TOC:PRINTA$(X):NEXTX 29 PRINT"Save this address(Y/N)?";:GOSUB5:IFINSTR("Yy",I$)THEN30ELSEPRINT"not saved 30 KEYSTOP:IFNTHENCLOSE:OPEN"adrs"FORAPPENDAS1:PRINT#1,"":FORX=1TOC:PRINT#1,A$(X):NEXTX:N=0:PRINT"Address saved":GOTO6 40 KEYSTOP:CLOSE:OPEN"adrs.do"FORINPUTAS1:N=0 42 N=N+1:LINEINPUT#1,RA$(1):IFRA$(1)<>"|"THEN42ELSEA=0:L=0 43 N=N+1:LINEINPUT#1,RA$(A+1):IFRA$(A+1)<>""THENA=A+1:GOTO43 44 KEYON:RETURN 50 KEYSTOP:IFL=0THENPRINT"No address in memory":GOTO6ELSEPRINT"Printer ready(Y/N)?";:GOSUB5:IFINSTR("Nn",I$)THEN50 51 CLOSE:OPEN"LPT:"FOROUTPUTAS1:PRINT"Envelope type - Personal or Legal (P or L)? ";:GOSUB5 52 IFINSTR("Ll",I$)THENTB=50ELSETB=33 56 PRINT#1,"":FORX=1TOA:PRINT#1,TAB(5);RA$(X):NEXTX:PRINT#1,STRING$(11-X,CHR$(10)) 58 FORX=1TOL:PRINT#1,TAB(TB);A$(X):NEXT X:GOTO6'tab(33) 70 PRINTE$"U";:STOP 80 KEYSTOP:GOSUB28:MENU 100 IFNOTFOUNDTHENL=0:RETURN 110 PRINT:FORX=1TOL:PRINTA$(X):NEXTX 120 PRINT"Correct(Y/N)?";:GOSUB5:IFINSTR("Yy",I$)THENRETURNELSEFOUND=0:L=0:RETURN 500 PRINT"ADRS.DO not properly set up. ERL="ERL"ERR="ERR:RESUME70