10  REM LHS DECISION LIBRARY -- PUNCHED JULY 18 '73
20  REM REVISED BY BILL WALLQUIST FOR MODEL 43
30  DIM H[20,20],F[200],A$[255],B$[49],C$[18]
40  LET B$="ABCDEFGHIJKLMNOPQRSTUVWXYZ,.;:!?'()-& 123456789$/"
50  PRINT "POSTER REVISED FOR 132 CHARACTER PRINTERS";LIN(1)
60  PRINT "AUTO CENTER? ";
70  LINPUT P1$[1,1]
80  IF P1$#"Y" THEN 110
90  J=1
100  GOTO 120
110  J=0
120  PRINT "INPUT THE LINES YOU WISH ENLARGED, RETURN TO END"
130  DIM P1$[100]
140  S=0
150  MAT F=ZER
160  FOR K=0 TO 19
170  FOR Z=0 TO 17
180  H[K+1,Z+1]=0
190  NEXT Z
200  X=0
210  A$=""
220  PRINT 
230  P1$=""
240  LINPUT A$
250  IF LEN(A$)=0 THEN 500
260  IF LEN(A$)<16 THEN 290
270  PRINT "TOO LONG"
280  GOTO 240
290  RESTORE 
300  IF  NOT J THEN 370
310  Z5=(16-LEN(A$))/2
320  FOR Z4=1 TO Z5
330  P1$[Z4,Z4]=" "
340  NEXT Z4
350  P1$[LEN(P1$)+1]=A$
360  A$=P1$
370  FOR L=1 TO LEN(A$)
380  FOR M=1 TO 49
390  READ C$
400  IF A$[L,L]=B$[M,M] THEN 440
410  NEXT M
420  PRINT CHR$(34);A$[L,L];CHR$(34);" IS INVALID"
430  GOTO 170
440  X=X+LEN(C$)/2+2*SGN(L-1)
450  H[K+1,L]=M
460  RESTORE 
470  NEXT L
480  NEXT K
490  K=K+1
500  N=K-1
510  LINPUT Z$
520  P=0
530  X=INT(34-H[P+1,18]/2)
540  FOR K=0 TO 16
550  F[K+1]=0
560  NEXT K
570  FOR K=0 TO 16
580  Y=H[P+1,K+1]
590  IF Y=0 THEN 740
600  FOR Z=1 TO Y
610  READ A$
620  NEXT Z
630  RESTORE 
640  FOR S=1 TO LEN(A$)/2
650  FOR L=S*2-1 TO S*2
660  FOR R=1 TO 16
670  IF A$[L,L]=B$[R,R] THEN 690
680  NEXT R
690  F[X+S+1]=F[X+S+1]*16+R-1
700  NEXT L
710  NEXT S
720  X=X+S+2
730  NEXT K
740  PRINT 
750  FOR L=7 TO 0 STEP -1
760  A$=""
770  FOR Z=X-2 TO 1 STEP -1
780  IF F[Z+1]/2^L >= 1 THEN 820
790  NEXT Z
800  PRINT 
810  GOTO 920
820  FOR K=0 TO Z
830  Y=INT(F[K+1]/2^L)
840  C$="@"
850  IF Y#0 THEN 870
860  C$=" "
870  A$[LEN(A$)+1]=C$
880  F[K+1]=F[K+1]-Y*2^L
890  NEXT K
900  A$=A$[36,LEN(A$)]
910  PRINT A$
920  NEXT L
930  P=P+1
940  IF P <= N THEN 530
950  LINPUT Z$
960  GOTO 60
970  DATA "BPCIEIIIEICIBP","PPJBJBJBJBGO","DMECIBIBIBECCE"
980  DATA "PPIBIBIBIBEBDO","PPJBJBJBJBIB","PPJAJAJAJAIA"
990  DATA "DMECIBIBIFEGCH","PPBABABABABAPP","IBPPIB","AMACABABABACPM"
1000  DATA "PPBABABACIEEID","PPABABABABAB","PPIAEACABACAEAIAPP"
1010  DATA "PPEACABAAIAEACPP","DMECIBIBIBECDM","PPJAJAJAJAGA"
1020  DATA "DMECIBIFIFECDN","PPJAJAJAJIGH","GGJBJBJBJBEO"
1030  DATA "IAIAIAPPIAIAIA","PMACABABABACPM","PIAEACABACAEPI"
1040  DATA "PIAEADAEBIAEADAEPI","IDEECIBACIEEID","IAEACABPCAEAIA"
1050  DATA "IBIDIFIJJBKBMBIB","AHAG","AGAG","DHDG","DGDG","PLPL"
1060  DATA "IAJLJLJAGA","OAMA","DMECIB","IBECDM","BABABABABA"
1070  DATA "AGGJJBJBGJAGAGAJ","AAAAAA","EBPPAB","EHIJJBJBJBGB"
1080  DATA "EGIBJBJBJBGO","AEAMBECEEEPPAE","OGJBJBJBJBIO"
1090  DATA "DMEGIJIJIJAJAG","IBICIEIIJAKAMA","GOJBJBJBJBGO"
1100  DATA "PPBABACIEEID","PPABABABABAB","PPIAEACABACAEAIAPP"
1110  END 
