4000 REMEMBER, THIS PROGRAM WAS WRITTEN BY DAVE AHL 4400 &"THIS PROGRAM PRINTS MESSAGES IN LARGE LETTERS.":& 4500 &"PLEASE STATE YOUR MESSAGE IN WORDS OF LESS THAN 6" 4510 &"LETTERS EACH. YOUR MESSAGE MAY CONTAIN UP TO 10" 4520 &"WORDS. YOU MAY USE THE LETTERS A-Z OR NUMBERS 0-9" 4530 &"BUT NO SYMBOLS OR PUNCTUATION MARKS. TYPE A '!' AS" 4540 &"THE LAST WORD TO END YOUR MESSAGE.":& 4545 DIM C%(30%) 4550 FOR N=0 TO 10 4560 &"WORD"N+1;:INPUT A$(N) 4570 IF A$(N)="!" THEN 4600 4580 NEXT N 4590 REMIND THE USER TO ASSIGN A DEVICE 4600 &:&"WHERE DO YOU WANT THE OUTPUT -- YOUR TERMINAL (KB:)" 4610 INPUT "OR THE LINE PRINTER (LP:)";A$ 4620 IF A$="KB:" OR A$="LP:" THEN 4630 ELSE INPUT "'KB:' OR 'LP:' PLEASE";A$:GOTO 4620 4630 ON ERROR GOTO 6000 4635 B%=512% 4640 OPEN A$ FOR OUTPUT AS FILE 4% RECORD SIZE B% 4650 IF A$="KB:" THEN X9%=2% ELSE X9%=3% 4660 X8%=3%: F8$=SPACE$(15%)+CHR$(13%)+CHR$(10%) 4665 ON ERROR GOTO 7000 4670 OPEN "CHARS.FIL" AS FILE 12% 4680 DIM #12%, X1%(6%,35%) 4690 ON ERROR GOTO 0 4700 FOR M=0 TO N-1 4710 Q$=A$(M) 4720 GOSUB 4800 4730 NEXT M 4740 PRINT #4% FOR I=1 TO 10 4760 CLOSE 4%:CLOSE 12%:GOTO 9999 4800 REMARKABLE SUBROUTINE TO GENERATE GIANT LETTERS 4801 PRINT #4%,F8$; FOR I%=1% TO X8%: CHANGE Q$ TO X%: X%(0%)=X%(0%)-1% WHILE (X%(0%))=32%: X$(I%)="" FOR I%=1% TO X%(0%): X$(I%)=X$(I%)+CHR$(X%(I%)) FOR J%=1% TO X9% FOR I%=1% TO X%(0%) 4850 FOR I%=0% TO 6%: FIELD #4%,B% AS O$: LSET O$="": X2%=0%: FOR J%=1% TO X%(0%): C%=X%(J%): IF C%>64% AND C%<91% THEN C%=C%-65%: GOTO 5100 5000C%=X%(J%): IF C%>47% AND C%<58% THEN C%=C%-22% ELSE C%=26% 5100 X0%=X1%(I%,C%): FOR K%=0% TO 4%: IF X0% AND 1% THEN 5200 ELSE FIELD #4%,X2% AS O$,X9% AS O$: LSET O$=X$(J%) 5200 X2%=X2%+X9%: X0%=X0%/2%: NEXT K%: X2%=X2%+X9%: NEXT J%: FIELD #4%,X2% AS O$,2% AS O$: LSET O$=CHR$(13%)+CHR$(10%): PUT #4% COUNT X2%+2% FOR K%=1% TO X9%: NEXT I%: PRINT #4%,F8$; FOR I%=1% TO X8%: RETURN 5900 REMEDY FOR SOME TROUBLE THAT HAS ARISEN 6000 IF ERR=3 OR ERR=8 THEN &"LINE PRINTER NOT AVAILABLE":GOTO 6030 6010 IF ERR=14 THEN &"LINE PRINTER HUNG OR WRITE LOCKED":GOTO 6030 6020 &"AN UNFORSEEN ERROR OCCURRED." 6030 &"YOU CAN WAIT AND TRY AGAIN FOR THE LINE PRINTER OR" 6040 &"PRINT YOUR MESSAGE ON YOUR TERMINAL." 6050 RESUME 4600 7000 &"OH, OH, SOMETHING HAPPENED TO THE FILE THAT CONTAINS THE" 7010 &"GIANT LETTERS. 'FRAID YOU'RE OUT OF LUCK TODAY. SORRY !" 7020 RESUME 4750 9999 END