> MakeLP A&87:G(&D00):&84:G$="1.13":M:H%&300:J" at line ";: *FX4 ( G:*FX4 2 ""A$(l%)=A$(l%)A$(l%)="" F Pn CHR$27+"@",,CHR$27+"E",,CHR$27+"G",,,,,CHR$27+"4",,,,,,,,,,CHR$27+"S0",,,,CHR$27+"W1",,CHR$27+"S1",,,,,, Z CHR$27+"R"+CHR$3+"#"+CHR$27+"R"+CHR$0,,CHR$27+"F",,CHR$27+"H",,,,,CHR$27+"5",,,,,,,,,,CHR$27+"T",,,,CHR$27+"W0",,CHR$27+"T",,,,,, d+ CHR$27+"-0",CHR$27+"-1",,,,,,,,,,,,,, n x.ݤB(A$):l%,B$:B$="":A$="++":="Set bit 7" A$="--":="Clear bit 7" A$=""="" +l%=1A$:m$=A$,l%,1):l%<>1 B$=B$+"," Qm$<32m$>126 B$=B$+×m$(m$>="0"m$<="9")m$=","B$=B$+34+m$+34B$=B$+m$ :=B$ ݤG::4"Printer Driver Generator ";G$'4;29,"="):'9"(C)1992 J.G.Harston":''5"1 : General settings":'5"2 : Letter extensions":'5"3 : Save settings":'5"4 : Load settings":'5"5 : (Create View Driver)":'5"6 : Create lp Program" T''5"0 : Exit"'':5"Press a key: ";:A$=:"0123456*"+13+0,A$):A$<>"*"A$ "A$="*""*"A$:A$:A$="":":"; ^A$=0"Saving...";:"SAVE "+$(+4),$(+4),">")+1)+" "+~+" "+~P+" FFFF0000 FFFFFB00" A$="1"C A$="2"H A$="3"N A$="4"O  A$="5"I  A$="6"J A$<>"":=A$="0" "ݤJ:=17-1=0=0 ,A$::A$=:=-1 6C::10"General Parameters"':"Auto linefeed? "D(b%)''"Paper length: ";Q%''"Text page length: ";R%:'"FF at end of page? "D(_%)''"LF at end of page? "D(T%):'"FF after last page? "D(N%):'"Convert CHR$96 (`) to pound? "D(J%) @"Convert CHR$163 ("163") to pound? "D(L%):c$"pound: "B(A$(64)):'"Highlight 1:":c$"underline on: ";B(A$(97)):c$"underline off: ";B(A$(96)):'"Use extended highlights? ";D(I%)':I%' JKI%"Highlight 2:"'c$"bold on: ";B(A$(98))'c$"bold off: ";B(A$(99)) T'':40,"=")"Printer reset with code '@' (see page 2)Pound also defined with code '`'";:13,2);:b%=C(b%):18,4);x%:x(18,4):x%>10 Q%=x%:14,4);x%;" " ^422,6);x%:x(22,6):x%>10 R%=x%:18,6);x%;" " h-17,8);:_%=C(_%):_%T%=:19,10);"No " r_%17,10);:T%=C(T%) |.18,12);:_%+T%=0 N%=0:"? No "N%=C(N%) 27,14);:J%=C(J%):28,15);:L%=C(L%):0,17)"Code: ";:""x$:x(0,17):x$<>""A$(64)=A(x$):16,16)B(A$(64));:x(,):x$=" "A$(64)="" f0,21)c$"on: ";:""x$:x(0,21):x$<>""A$(97)=A(x$):24,19)B(A$(97));:x(,):x$=" "A$(97)="" g0,21)c$"off: ";:""x$:x(0,21):x$<>""A$(96)=A(x$):24,20)B(A$(96));:x(,):x$=" "A$(96)="" |23,22);:I%=C(I%)::I%x(,):x(0,+1):x(0,+1)"Highlight 2:"'c$"bold on: ";B(A$(98))'c$"bold off: ";B(A$(99)) jI%0,27)c$"on: ";:""x$:x(0,27):x$<>""A$(98)=A(x$):19,25)B(A$(98));:x(,):x$=" "A$(98)="" kI%0,27)c$"off: ";:""x$:x(0,27):x$<>""A$(99)=A(x$):19,26)B(A$(99));:x(,):x$=" "A$(99)="" (0,28)"Ok";:i%=C():x(0,28):i%: "x(X%,Y%):X%,Y%);(39-);: ݤD(F%):F%:="Yes"="No " ݤH(l%):l%=D%:="Set bit 7" &l%<>E%:=B(A$(l%))="Clear bit 7" bD(A%)::l%=031:0,l%);(l%+A%+32);" ";H(l%+A%);20,l%);(l%+A%+64);" ";H(l%+A%+32);:: H:t%=32:D(t%):*FX4,1 l%=0:1+20*((l%32)1),l%32);":";20,31);(l%+t%+32);" ";B(A$(l%+t%)),16);(38-);20,31);:K%=:m%=l%:K%=136 m%=l%-32 K%=137 m%=l%+32 K%=138 m%=l%+1 &K%=139 m%=l%-1 0K%=135 t%=t%32:D(t%) :m%<0m%>62 m%=l% D/m%<>l%1+20*((l%32)1),l%32);" ";:l%=m% NK%<127K%>31:T:0: X@T:22,31);16;22,31);:C$=A(E(K%,17)):C$,1)=" "C$="" bC$=""D%=l%D%= lC$=""E%=l%E%= vBC$="++"D%>((D%-t%)&FFC0)=02+20*((D%-t%)32),D%31);18; BC$="--"E%>((E%-t%)&FFC0)=02+20*((E%-t%)32),E%31);18; 'C$="++"C$="":D%=(l%+t%)(l%+t%<32) 'C$="--"C$="":E%=(l%+t%)(l%+t%<32) EA$(l%+t%)=C$:2+20*((l%32)1),l%32);H(l%+t%);(20-(20));:0 OݤA(A$):l%,B$:l%=1:m$=A$,l%,1):(m$<"0"m$>"9")m$<>34 B$=B$+m$:l%=l%+1 5m$=34A$,l%+2,1)=34 B$=B$+A$,l%+1,1):l%=l%+3 ?(m$>="0"m$<="9")B$=B$+A$,l%):l%=l%+A$,l%)+",",",")-1 A$,l%,1)=","l%=l%+1 l%>A$:=B$ HݤE(A$,`%):B%,l%:$H%=A$:l%=A$:A$;:B%=:B%=127l%<>0127:l%=l%-1 +B%>31B%<127l%<`%B%:H%?l%=B%:l%=l%+1 B%=13:H%?l%=13:=$H% 1I:"Filename to save by: "F$:F$=""F$="drv" '"Assembling View Printer Driver";:P=01:C%=P*3+4:P%=&400:O%=H%:O%=H%:[OPTC%:JMPv:JMPQA:JMPIA:RTS:.RA:BRK:.`A:BRK:RTS:]:B(C%):[OPTC%:.QA:LDA#2:JMP&FFEE:.IA:LDA#3:JMP&FFEE:.v:]:I%[OPTC%:BITRA:BMIw:]  J[OPTC%:CMP#&81:BEQx:CMP#&80:BEQy:CMP#13:BEQj:]:J%[OPTC%:CMP#96:BEQq:] L%[OPTC%:CMP#163:BEQr:]  `[OPTC%:JMP&FFEE:.w:.q:.r:.y:.x:.j:RTS:]:"*SAVE "+F$+" "+~H%+" "+~O%+" 400 400":"...": * 4MݤF:G%=0:M%=:l%=0:A$(l%)<>""m%=1A$(l%):G%=G%(A$(l%),m%,1)>127): >l%=l%+1:l%=102G%:G%:=I H*l%=0:A$(l%)<>""A$(l%),1)<>27 M%=0 Rl%=l%+1:l%=102M%=0:=0 \EݤI:M%=0:f%=0:l%=0:A$(l%)<>""m%=1A$(l%):Q(A$(l%),m%,1)): fVl%=l%+1:l%=102(M%f%):M%f%"Can't build table with both 0 and 255";:f%=:==0 pQ(A%):A%=0 M%=: zA%=&FF f%=  B(C%):U%=(M%128)+(b%64)+(_%32)+(T%16)+(I%8)+(J%4)+(L%2)+(N%1):W%=(G%128)+(e%64):[OPTC%:EQUBU%:EQUB(Q%31)+(((E%-32)*4)&E0):EQUB(R%31)+(((E%-32)*32)&E0):EQUBW%+((D%-32)(D%>0E%>0)):.F:]:l%=0101:A$(l%)<>""U :[OPTC%:EQUB255:]: =U:[OPTC%:EQUBl%+1:]:G%[OPTC%:EQUSA$(l%):EQUBM%&FF:]: >M%[OPTC%:EQUSA$(l%),2,A$(l%)-2):EQUB128+A$(l%),1):]: 9[OPTC%:EQUSA$(l%),A$(l%)-1):EQUB128+A$(l%),1):]: #J:"Create 'lp' program":F ,"Filename to save by: "F$:F$=""F$="lp" 2D$=F$:D$,".")D$=D$,D$,".")+1):D$,".")=0 R"Assembling ";F$:Z%=&FFFF0900:B=0:O%=H%:P%=Z%:z=B:A(4):B>&B00 Z%=&FFFF08C0 B=z:O%=H%:P%=Z%:A(6):"Saving ";F$'"Start: &";~Z%&FFFF;" End: &";~B:"SAVE "+F$+" "+~H%+" "+~O%+" "+~(d%&FFFF0000)+" "+~Z%: 7A(C%):B(C%):K(C%):E(C%):L(C%):F(C%):P(C%): uK(C%):[OPTC%:.O:LDA#1:STAQ:RTS:.AA:TYA:PHA:JSRO:LDA#124:JSR&FFF4:LDA#15:JSR&FFF4:PLA:TAY:.OA:]:N%[OPTC%:JSRn:] [OPTC%:DECQ:BEQBA:LDA#0:STA&A8:STA&A9:STA&AA:STA&AB:LDX#&A8:LDA#1:JSR&FFDA:._:JSR`:STAo:JMPD:.BA:LDA#3:JSRM:LDA#0:]:B<&B00 [OPTC%:JMPN:] RB>&AFF [OPTC%:JSRN:LDA#0:LDX#1:JSR&FFF4:CPX#3:BCSSA:LDA#18:JMP&FFF4:.SA:RTS:]  $>E(C%):[OPTC%:.R:JSRJA:LDAL:CMP#R%:BCCD:JSRn:.D:LDX#1:]: .1L(C%):[OPTC%:.E:BIT&FF:BMIAA:JSRb:BCSOA:]: 80 [OPTC%:Abit7:] BJ%[OPTC%:CMP#96:BEQS:] LL%[OPTC%:CMP#163:BEQS:] V[OPTC%:.PA:INX:JSRC:JMPE:.TA:CMP#13:BEQR:CMP#10:BEQR:CMP#9:BEQZA:CMP#12:BEQCA:CMP#28:BEQc:CMP#29:]:I%[OPTC%:BEQf:][OPTC%:BEQUA:] `/[OPTC%:BNEE:]:J%L%[OPTC%:.S:LDA#64:BNEI:] jV[OPTC%:.CA:JSRn:JMPD:]:I%[OPTC%:.VA:JMPOA:.f:JSRb:BCSVA:SBC#31:BMIE:CMP#95:BCSE:] tW(E%D%)>0:[OPTC%:CMP#D%:BEQWA:CMP#E%:BNEI:LDA#0:.KA:STAXA:JMPE:.WA:LDA#128:BMIKA:] ~v[OPTC%:.I:JSRG:JMPE:.c:LDAH:#1:STAH:#1:A#96:.DA:JSRG:JMPE:]:I%[OPTC%:.UA:LDAH:#2:STAH:LSRA:#1:A#98:BNEDA:] [OPTC%:.ZA:TXA:#7:TAX:.EA:LDA#32:JSRC:INX:TXA:CMP#8:BNEEA:JMPE:.LA:LDA#27:BNEU:.C:.U:PHA:LDA#1:JSRk:PLA:.k:JMPM:]:_%[OPTC%:.n:LDA#12:JSRU:] -T%[OPTC%:.FA:JSRa:.n:LDAL:CMP#Q%:BCCFA:] Q[OPTC%:INCo:.`:LDA#0:STAL:RTS:.JA:BITH:BVCa:JSRa:.a:]:b%[OPTC%:LDA#10:JSRC:] p[OPTC%:INCL:LDA#13:JMPC:.G:STXJ:CLC:ADC#1:LDX#0:.GA:CMPF,X:BEQl:BCCK:PHA:.T:INX:LDAF,X:]:G%=0 [OPTC%:BPLT:] G%M%[OPTC%:CMP#&FF:] G%[OPTC%:BNET:] 4[OPTC%:PLA:INX:BNEGA:.l:]:G%=0M%[OPTC%:JSRLA:] 1[OPTC%:.V:INX:LDAF,X:]:G%M%[OPTC%:CMP#&FF:] G%[OPTC%:BEQK:] G%=0 [OPTC%:#127:] :[OPTC%:JSRC:]:G%=0 [OPTC%:LDAF,X:BPLV:][OPTC%:JMPV:] [OPTC%:.K:LDXJ:RTS:]: bP(C%):o%=O%:p%=P%:[OPTC%:.Q:BRK:.W:BRK:.L:BRK:.o:BRK:.H:BRK:.J:]:(E%D%)>0:[OPTC%:.XA:BRK:]  O%=o%:P%=p%:[OPTC%:.d%:LDX#&A8:LDY#0:JSRO:STYW:JSR&FFDA:LDA(&A8),Y:CMP#13:BEQp:LDX#0:CMP#"+":BNEs:LDX#&40:JSRZ:BEQp:.s:STXH:TYA:PHA:.MA:INY:LDA(&A8),Y:CMP#"!":BCSMA:JSRg:BEQh:JSRi:STAQ:JSRg:BEQh:JSRi:STAW:.h:PLA:CLC:ADC&A8:TAX LDA#0:ADC&A9:TAY:LDA#&40:JSRN:TAY:BEQm:LDA#2:JSRM:LDA#32:JSRG:JMP_:.p:._A:BRK:EQUB220:EQUS"Syntax: "+D$+" (+) ()":.m:BRK:EQUB214:EQUS"Not found":BRK:.i:LDA#0:.NA:STA&AA:LDA(&A8),Y:CMP#"0":BCCHA:#15:PHA LDA&AA:ASLA:ASLA:ADC&AA:ASLA:STA&AA:PLA:ADC&AA:INY:BNENA:.HA:LDA&AA:RTS:.Z:INY:.g:LDA(&A8),Y:CMP#" ":BEQZ:CMP#13:RTS:EQUS"V"+G$:BRK:.B:]: ( N:F 2X'"Save settings":"Filename: "F$:P%=H%:B(0):"SAVE "+F$+" "+~H%+" "+~P%+" 0 0": 0:b%=(U%64)<>0:_%=(U%32)<>0:T%=(U%16)<>0:I%=(U%8)<>0:J%=(U%4)<>0:L%=(U%2)<>0:N%=(U%1)<>0:G%=(W%128)<>0:e%=(W%64)<>0:M%E$=27E$="" Z a%=0R: d#a%>80"Unknown format";:a%=: nx%=1:a%=1 x%=-31 xm%=V%+4:G%S: fl%=0101:A$(l%)="":?m%=l%+x%:m%=m%+1:A$(l%)=A$(l%)+(?m%127):?m%>127:m%=m%+1:A$(l%)=E$+A$(l%) : qS:l%=0101:A$(l%)="":?m%=l%+1:m%=m%+1:A$(l%)=A$(l%)+?m%:?m%=(M%&FF):m%=m%+1:A$(l%)=A$(l%),A%(l%)-1) : |R:m%=V%+84:l%=473:`%=?(V%+l%+1)-V%?l%:`%>0 A$(l%+28)=E$:n%=1`%:A$(l%+28)=A$(l%+28)+K(?m%):m%=m%+1:A$(l%+28)="" :E%=:D%=: *ݤK(c%):G%c%>127:=27+(c%127)=c% >ݤC(F%):K%:"? (";(78-F%*11);")";:K%=:K%>95 K%=K%&DF ,K%=13K%=89K%=78:K%=13 K%=F%K%=K%=89 3,127);:K%"Yes""No " =K% S% =B%=(+(A%-P-S%))&FF00:"Relocating to &";~B%:*K.0 RUN|M  *FX225,1 *FX138,0,128 &A%=0P-+44:B%!A%=A%!::=B%: