IMD 1.17: 4/01/2010 17:45:17 mite c2.5 morrow 9-29-83 mycroft labs 1983 CIS PARCOMHEX COME COM*FILES DOCFLS COMA SOURCE PAR MFT COM INSTALL COMLMITE/U COMA SQ COMj!"#$%&'TRSCPM COM()USQ COMO*+,-.MORROW ASM /01234567MORROW HEX89M% , Compuserve Information Services [%>^g%@"% g%͛ < go pcs-47^M=#@W^C@T:nnnnn,nnnn^M@T:@Npass-word^MM^M͆Ҁ`i>  > 2U~# ;> :U<2U'E:U<2U:O=2O :w:<2!w;ʒ2͹ Ò:Oo҉$  #>!%ZҼ) KZ!>3 KͶ?-?*G"K*I*M2~E#2ON#F#xyE͆3Z~#:O=2OͲ:Oo<$ ZuͶa Ï*G"K*I*M~ʏ#N#F#x†yʉҒ͝a*"6*R  }·! "V}! "X*N #*Vs#r# *V*X"V |!"V|! "X>2Z >2[;}2A !"P*Fq#^#V#~#I Y< *P#"PNV *P  $!!6B#6A#6Kc !=-c 6"G|*+~-*G|!"I!o +*( ,+-+0 )T]))o$7*+"!4+!ů22o ڀ 7G!\o ڀaw#:<2PF|!o ڀʀw#:<2Pd7Â7?:7O:O*I#"Iɯ202D!"G"I$<  NO COM FILE$!\ %y!9"HEX~# !\$ .æ*!*#}|ږ!"#*!{z҈*k*#"#= w DISK FULL: HEX$!"#**##"#ɯ2 2!"!!"#<  NO DIR SPACE: HEX$!"+>:2->ͫ*+ͦ>ͫ/ͫ*+#"+ :-/<ͫ>ͫ/:-/<ͫ!͜*#}U"!>(I<‰ vÉ CANNOT CLOSE HEX$*:0000000000 ~#Ü|ͫ}!-wͽ 0(> > N!91!\cE v1.3 - Line Numbered Editor Copyright (c) 1982, Mycroft Labs Inc. $"2[2!-2T!>͛©f 0 >2T!66B#6A#6K-$ !66$#6$#6$-!>3 6*}o*}o|g"R*"6>P22Z:Tv!"P! "Kj"K|1}4=q jDM*"M/T 6*P#"P*K "K*P  ͜ :Zʤ> *V > "K*X"V͉ :·2Z:Z**~0:-"Ko ͝:/ Ao %  -> "8-y !jAG# D]##~=e^#V7g7?HELP LIST KILL ONEW SPACERESEQRENUMAUTO CAPS %PAGE +WRITEEND EQUIT 6:  ;  ;*K*"M~#)2ON#F#xy%):Oo"$7+7?:O*R}o|gڙ"R| R>**M{OzG:&o###"w+ xm*M:*K}|*:G~#*M^*R"R*Mw#<µ+"Ͷڌ-ڌ*G"K*I*M2~ʒ#2ON#F#xy >2> 2 7> I > I --u:x 7=2*~#"7?!6#" :[ʵ !:G~%w#«   7'  d   }o|g  x  > 0'G G dG  G G }o|gV I x_ 0I New File $Error in Input $Directory Full $File Too Large $ Lines Read $OK $Error $ Lines Written $Edit Buffer Full $ Bytes Available $ Press RETURN to continue ...$Enter Filename: $Filename Error $ The following commands are available: LIST List all lines LIST n List line "n" LIST n- List all lines starting at "n" LIST n-m List all lines "n" through "m" LIST n-m /str/ List all lines as above that include "str" NEW Erase all lines in buffer KILL Same as NEW KILL n Erase line "n" KILL n- Erase all lines starting at "n" KILL n-m Erase all lines "n" through "m" WRITE Write all lines (to file) WRITE n Write line "n" WR :<2j!4 (2> _j=oj!*~#fo)|!&R o!(N#Fp+q!*N#Fp+q7!,~>‡ ©Unable to Close - Job Aborted $կ > ͢~ʚ #> ͢ ~%ʚ#:?"!O#y*#~*4~*.e ʚ=ʚ*\>?͢Þ! ~%ʚ# ʚ=ʚ*‘>?͢ÚpÞ7¢CONRDRPUNLSTNUL=  __$> > ~#a{ !'~:րڒ!$N#F>x!(q#p?   o& ##6 #6 !*w#6 > !&~2!$N#F!(q#p!" "*!'w* "* "!5´*DM!*q#px > ! ~2! ~2!$~#fo""!,F!*~#foxE )|22ʔ:2c=_*ʃs* "!5c:_!*6#6!$N#F!(q#p!,~h2:! >2! ~2:w! ~2:Files Included on the MITE Distribution Disk: MITE/U.COM Uninstalled COM file of MITE INSTALL.COM Install Program x.ASM One or more CIOS files x.HEX Object file(s) of above SOURCE.PAR Template for your SOURCE parameter file CIS.PAR Template for your CIS parameter file TRSCPM.COM TRSDOS to CP/M text file translator E.COM Mycroft Labs Line Oriented Text Editor COMHEX.COM .COM to .HEX conversion utility MFT.COM Single drive file transfer utility SQ.COM Squeeze Utility USQ.COM Unsqueeze Utility TYPESQ.COM Utility to TYPE a squeezed file FLS.COM Pipe enhancement for Squeeze/Unsqueeze Utilities FILES.DOC This File ITE n- Write all lines starting at "n" WRITE n-m Write all lines "n" through "m" WRITE n-m /str/ Write all lines as above that include "str" $ AUTO Start Auto-Line numbering: FIRST = 10, INCR = 10 AUTO n Start Auto-Line numbering: FIRST = n, INCR = 10 AUTO n,m Start Auto-Line numbering: FIRST = n, INCR = m RESEQ Resequence all line numbers: FIRST = 10, INCR = 10 RESEQ n Resequence all line numbers: FIRST = n, INCR = 10 RESEQ n,m Resequence all line numbers: FIRST = n, INCR = m CAPS Translate all lower case to caps SPACE Request available space in buffer QUIT Abort without writing buffer to disk END Write buffer to disk $!,w! 6! 6!*6#6`i)|!&w!'6!$q#p!*~#.!(N#F p+q!*N#F p+q!,~>7!,w! 6! 6!*6#6`i)|!&w!$q#p!(q#p””2Disk Full - Job Aborted $> > 7ր9j_j=o=_j=1 w*":2hm*m#-"!5:h! :w! :w>Disk Full - Job Aborted $‡ ©Unable to Close - Job Aborted $կ > ͢~ʚ #> ͢ ~%ʚ#:!a{   `OE!y6$ -7rBo&))T])))!y!>15:<15>{15Y/e56!'":}15Y/!:&1515\0!:</"͞) :<@"ͧ*͞)Z!:<>L">15͞)>15>@2G>)15ç"#(l'ͷ**͞)!2"ͫ'-L3#ͷ&"x0e5G)͍'ͫ'ͷ**͞)b)~F9#^#V##!2)))U~,L3G~`2<2<#~2<~?>T#=2<#^#V#^#V#"<^#V"<:<~#*<!:<@ʏ#"<*<#w"<*<~ʫ#¶#,L3;+"<*<+".! ~#fo͐)~#fo#n}* ! ~#fo͐)~#fo# #|! ~#fo͐)~#fo#!N!*6!]! ~#fo͐)~#fo|S*n&|g}os}*##4! ~#fo͐)~#fo#*###s#r! ~#fo͐)~#fo#n}! ~#fo͐)!is#r! ~#fo͐)*s#r*#n&|g}os! ~#fo͐)~#fo#n}!v!! ~#fo͐)~#fo# *! ~#fo͐)~#fo# #|x! ~#fo͐)~#fo#!!*#4w}͐! s#r͐͐ ~#fo! ~#fo͐)! ~#fo͐#)~#fos#r! ^#Vr+sÒ͐ ^#Vr+s`i^#Vr+s*^#Vr*K͞+p!p!)'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77builder - Version %s by Richard Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 Accepts redirection and pipes. Omit other parameters for help and prompt Parameters are from command line or (singly) from console input. Drive names and -options are passed thru. Ambiguous file names are expanded. CR or EOF to stop. *Q ì^u~!9DM͐?n}-| ͐?#n}: ͐?##n} ͐?!G E > ͐?`iH #|¶ ͐?!K !K > !* w#w!!N ͐*| `i!N `i!N !) s!) n} " !, !$ s#r͐?#n}:? !$ ^#Vr+s͐?ns!$ ^#Vr+s6:!) n& ?!& s#r!( 6!( n}ʨ ͐$!& ^#Vr+sng|g}os{ ʠ !$ ^#Vr+s!( 5e !$ ^#Vr+s6.!( 6!( n} ͐$!& ^#Vr+sng|g}os{ !$ ^#Vr+s!( 5ý ͐$6!, !Z E !* ^#Vr+sþ ͐*|> ͐?!^ !K !;9%s %s is bad afn %s %s not found - ignored  ~Ñ!9DMw}ʼ * y `is{ ¹ * y `is !| `is{  `in} ! `in}  `i6 w} ! !|+s+͐ ͐s#r! ~#fo͐ ~#fo)w#w9! ^#Vr+s`i^#Vr+s]!9Can't open %s ͐^#Vr+sn&ÿ!͐͐~#fo`is#r!{͐##^#Vr+sÿ͐##͐?+s#r͐͐s#r͐^#Vr+sn&ÿ!9 ~!9DM͐+|! n&͐++|! n&!͐+++|1! n&!͐++++|i! n} V! !! n&!͐##^#Vr+szʚ͐^#Vr+s! ns&!͐͐~#fo!͐##6#6͐͐s#r͐^#Vr+s! ns&! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 G! 6G! 6! ~#fo! n&! ^#Vr+s~#fo! ͳѯgs#r0! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+s0! n}! 6#6! ^#Vr+s~#fo! s#r͐n}0͐|0! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+s͐6! ! s#r! n}‡! ^#Vr+s!҇! ^#Vr+s! n}~!0Á! sL͐! ^#Vr+sns{ʰ! ^#Vr+sÇ! n}! ^#Vr+s!! ^#Vr+s6 ú! ^#Vr+s`ins ! ^#Vr+s`ins͐6!9%!9DM! ^#Vr+sn`is{z`in} [͐! "͐`in&"#|w!À-!À!9Ï !9DM͐n}ʹ! ^#Vr+sn&͌×û!9DM͐͐ ͐^#Vr+s͐ ͐0͐7s!&\͐ ͐͐ ͉͐;`is͐ ͐͐ )͐;`in&#&\!9!9DM! n&0ͯڐ! n&9ͯÚe!9DM`iw#w͐~#fon&͗}͐ ?͐^#Vr+snѯg`is#rè͐!9/!*w#!:**!*!ѷ! , FNxg>Goyn!$:O*o`  !\&!7*!&*!&!, !\&!TELk7e uÑ7*^#V#z+V+^+'* !E!Broken pipe 7:)~:,"s!"u*|ʩ**s®! ~©6*u*+"*"*u#"uu7:)~:,"s!"u*|*u/*~#"*s*u/#"u*+"7,2q*&:q):m=m=r:qo&~Ô17*x\!*{#7*|DM**><~# x ><~+ x|} J!7:,*:*" }|2q S I :qwD ! {w7*!9& 6C#6O#6M” *|ª !\&ü !\&*|¼ !!l&!~#fo > + #~ ## a{ !p !! 1!9DM͐!͐s#rz5!͐##w#w͐~#fo!9DM`iw#w! ~#fo͐n! ~#fo͐n}¥! ~#fo`i^#Vr+sn}¢!Y! ~#fo͐n! ~#fo͐nѯgW!9u!9DM͐͐s#rz!͐͐s#r͐##6#6͐~#fo8æ!9DM͐R!͐~#fo5oé!9DM͐Ҋ!ç͐##~#fo£!ç͐##~#fo`is#r͐͐͐~#fof͐!ç͐+?`is#r͐##~#fo|ʀ!͐͐͐i͐##~#fo͐s#r͐~#fo͐s#r!!͐~#folç͐##6#6͐͐s#r!ç!9ÿûeÔ!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{`in}%! ! s#r! 6#6! s! s! s͐n}-O! ^#Vr+s! 4͐n}0_! 4͐n&Ͷ}|! ͹!! s#r! ^#Vr+sn`is{.! ͹! s#r! 4! ^#Vr+sn`is`in&ͼ}DU/X8OACʇSʸ͐~#fo|/9DM! n&|$! n&)! n&!9DM! n&aͯZ! n&zͯ7*~# e e+*&!7:O*o`  !\&!7*!&*!&!, !\&!TELk7e uÑ7*^#V#z+V+^+'* !E!Broken pipe 7:)~:,"s!"u*|ʩ**s®! ~©6*u*+"*"*u#"uu7:)~:,"s!"u*|*u/*~#"*s*u/#"u*+"7,2q*&:q):m=m=r:qo&~Ô17*x\!*{#7*|DM**><~# x ><~+ x|} J!7:,*:*" }|2q S I :qwD ! {w7*!9& 6C#6O#6M” *|ª !\&ü !\&*|¼ !!l&!~#fo > + #~ ## a{ !p !! > y0_ \\\\\\MFT v3.2 - Multi-File Transfer Utility - Feb 16, 1982 Copyright 1982, Mycroft Labs Inc. Buffer size = sectors Mount input disk, type CRSyntax error in filename - not found read error - sectors read Mount output disk, type CRunable to create error writing file unable to close sectors written No such file(s) Mount system disk, type CRM% , Source Telecomputing Corp.atio 2B< c 30128^M <mailck^MM< mail read^MMy^M<post scan cp/m^MM=.^M@W^M@E@T=d1@T@c xxxxx^M@T>id xxxnnn passwd^MM 1q !ͭ24 25 *}o6 }o|g)l>g+"q !ͭ*q !"ͭ!-ͭ  Aͷ:4 Ž!u F#~#a!u " ;:0…!ͭæ!0" " !6 " *q "s :4 ! \!͵24 >25 * " !]ͭ!bͭ* * ~ʌ6#] ͵" !]ͭ!bͭ2\2h2|8* * |}" !" * ͒G5b!sͭb* " * #" *s +"s |!\ !͵>24 ͒V* !ͭ* * r#s#" :4 !ͭ  Œͷ,:5 ! \!͵8* " !]ͭ!bͭ!* ~ʟʟ#] ͵" !]ͭ!bͭ2\2h2|:e2e:f2fet!!ͭæ* V#^#" V#^#" " " * |q* ͒̓[!ͭæ* " * +" |D!\ !͵͒V!ͭ* !ͭ:4 A! ͭ ͷ~#µ~ #þ  >  ~7# 7.*9>?~.7# ~7# 7*,97>?,7!06" * ~;" [!GͭC2  ͞y! ͭ!fͭCo&)))))*  ͵!&͵" 6 ͪyC~#í> > 'd }o|g y x!91B'#!,͑ &K#k:/6!%D'ͺ!D'!H;k2'##ͅ##k?!G~E}o#^#V#^#V#ͅ## 2&nҬÈog"'^#V#"&'ͺ!##G'ͬ"###k!"&#'>͑#:'E!'E*&|{#ͅ##k*?[2&#9nҝy#y#[#ͅ##6R0R0!w#G<#x#͑Rw#ƒ!7?H#H #~2H#~2H#~2H#~2H#~2I# I~#*'}#}7+#ͅ###k*7ny#~2I#.H#2I ####:6G!0q'ͺ!#q'ͬ"#q'!HcD'!q'͘Gʎʄ {pog7?7'>P͑#:' ^®:'0:'#}ɷ > >^@> ͺ#INSTALL v2.52 - Mite Installation Program - Aug 10, 1983 Copyright (c) 1983, Mycroft Labs Inc. $Syntax error in command $Illegal file name $Invalid option $Writing installed version to $ $ *** Installation Aborted *** $ Enter name of Hex file to load (FILENAME.HEXfor Main Menu) : $ABCDEFGHIJ  Desk-Top Computers (A-M) ------------------------ A - Alspa B - Altos Series 5 (JB port default) C - Altos 8000 Series (printer port default) D - Casio E - DEC VT-180 F - Pacifica Discon G - Durango H - Eagle II, III, IV I - Exxon 500, 510, 520 J - Intertec Superbrain K - Lanier EZ-1 L - Lobo Max-80 M - Monroe OC 8820 N - Morrow Decision I, II, III O - Morrow Micro Decision Enter selection (CR for Main Menu) : $A BC%DgEFGHIJ\KLMNO Desk-Top Computers (N-Z) ------------------------ A - NEC PC-8800 B - Northstar Advantage C - Northstar Horizon (Standard) D - Northstar Horizon (HSIO-4) E - Radio Shack Model II, 12 (Port B default) F - Sanyo MBC-1000 G - Sanyo MBC-1100 H - Sanyo MBC-1250 I - Sanyo MBC-2000 J - Technology International Corp. K - Televideo TS-801, 802 L - Televideo TS-803 M - Vector 3 N - Vector 4 O -ts Multi-I/O M - Sierra Data Sciences ZSIO N - Teletec System Master Enter selection (CR for Main Menu) : $ABCDEFGHItJ9K LwMN Apple Serial/Modem Boards ------------------------- A - Apple II Hayes Micromodem II (Z80 and 80 column required) B - Apple II Super Serial (Z80 and 80 column required) C - Apple II CCS 7710 (Z80 and 80 column required) Enter selection (CR for Main Menu) : $A2B>CL AUTO-DIAL MODEMS A) Anchor-Signalman Mark VII B) Bizcomp 1012 C) Datec 212 AD D) Hayes Smartmodem 300 and 300/1200 E) Incomm 212 F) Novation Smart-Cat 300 and 300/1200 G) Novation Auto-Cat 1200 H) Novation J-Cat I) Racal-Vadic VA212, VS212 J) Rixon 212A K) Toyocom 212 L) UDS 212A/D M) U.S. Robotics 212 ?) Other Smart Modem MANUAL DIAL Y) All modems manually dialed DIRECT CONNECT Z) No modem *) Do not change modem type Enter modem selection: $AB5CTDsEFGHI) : $How many characters are required to erase the screen? $Enter the characters one at a time (followed by ) $? $ The following terminals are supported: A) ADM-3A B) Televideo 925/950 C) Smarterm 80 column board for Apple II D) Videx 80 column board for Apple II E) Heath/Zenith 19 F) Apple IIe ?) Other *) Do not change terminal codes Which terminal do you have? $ Computer Selection - Main Menu A - Portable Computers B - Desk-Top Computers (A-M) C - Desk-Top Computers (N-Z) D - Other Computers E - S-100 Serial/Modem Boards F - Apple Serial/Modem Boards ? - Other not in A-F Enter Sub-Menu Selection : $A BE CU m D ,EdrF Portable Computers ------------------ A - Access Matrix / Internal Modem B - Access Matrix / External Modem / Direct C - Digital Microsystems Fox D - Escort E - KayPro II, 4 ,10 F - Micro Source G - Osborne I H - Osborne Executive I - Otrona Attache J - Zorba / Zorba 2000 Enter selection (CR  Xerox 820, 820-II P - Zenith 89, 90 Q - Zenith 100, 110, 120 Enter selection (CR for Main Menu) : $ABC+D9E7FBGNH\IjJKLMNOPQ Other Computers --------------- A - Action 500 B - Avatar (3R Computers) C - Big Board D - Colonial Data Systems E - Intercontinental Micro Systems CPZ-48000 F - Intercontinental Micro Systems Slave G - IRIS H - Molecular I - Monolithic Single Board Computer J - Pied Piper K - PMC Micro Mate Enter selection (CR for Main Menu) : $ABZCDsEEFOGiHIJ K S-100 Serial/Modem Boards ------------------------- A - California Computer Systems 2710 B - California Computer Systems 2719 C - CompuPro Systems Support Card D - CompuPro Interfacer 1, 2 E - CompuPro Interfacer 3, 4 F - Cromemco TUART G - Hayes Micromodem 100 or 80-103A H - Imsai SIO2-2 I - Ithaca Intersystems J - Northstar HSIO-4 K - PMMI MM-103A L - Seattle Computer Produc J-KLLkMsYZ?ATAT DAT D%I%D ^E^MO^M16^M2^M^MI^M^E^MD^MQ^M^MQQ^M^MDOG0OG0ENDDTMITE/U.COMMITE.COMALBCDLEuF0123456789  0123456789  U!U ABCDEFGHIJ  0123456789  0123456789  :0123456789   0123456789  0123456789  0123456789  ESTUVWPQR89  pq*0123456789  0123456789  ACTION.HEXACCESSD.HEXACCESS.HEX(tl2(Stl2!(tl2 (* ( " (tltl* (w#" (!(5.tl:(l: e9#7g7?* (+X#7ͺ2(ͺ2(2((P#}Unable to open input file $Unable to close input file $Unable to open output file $Error while writing file $Unable to close output file $Unable to open hex file: $Error while closing hex file: $Error while reading hex file: $!,w! 6! 6!*6#6`i)|!&w!'6!$q#p!*~##!(N#F p+q!*N#F p+q!,~>7!,wg! 6! 6!*6#6`i)|!&w!$q#p!(q#ppt#p2"HDisk Full - Job Aborted $րª/ _/ =4 =¼_/ =  :"H<2"H/ !"H4 2"H> _/ =4 / !*~#fo)|!& $4 !(N#Fp+q!*N#Fp+q7!,~U >͎L $n q #Unable to Close - Job Aborted $~ʦ ###6####Ô ! "$H25H26H!$H = ,  ʺ w#º õ!:$H ʔ!:$H #:%H! ~ õ!fox % )|2@H2HH[%&2H*%=_*>HJ%:&#*>H ">H!@H5*%:H_!*6#6!$N#F!(q#p!,~/&2EH:AH! ʽ%>2EH! ~2CH:AHw! ~2DH:BHw*FH">H:HH2@H/&IH4&*>HIH4&#%">H!@H5%:EH/&! :CHw! :DHw>Disk Full - Job Aborted $&&#B&0&&)oW&&&#O&Q&0&&)))ox&&&#D&0& &)T]))хoҠ&$à&:H&}/o|/g#7!2H+&-2HLADVANT.HEXALSPA.HEXALTOS.HEXALTOS8.HEXAPPLE.HEXAPPLESS.HEXAPPLE77.HEXAVATAR.HEXCASIO.HEXCOLONIAL.HEXCCS2710.HEXCCS2719.HEXDISCON.HEXDURANGO.HEXESCORT.HEXEXXON.HEXLEAGLE.HEXEZ1.HEXDMFOX.HEXGODSS1.HEXGODIF1/2.HEXGODIF3/4.HEXHAYES.HEXHORIZON.HEXHSIO4.HEXIMS.HEXIMSSLV.HEXSBRAIN.HEXIRIS.HEXITHACA.HEXMAX80.HEXMICROD.HEXMOLEC.HEXMONOLITH.HEXLMONROE.HEXMORROWMSOURCE.HEXNEC88.HEXLOSBORNE.HEXLEXEC.HEXmOTRONA.HEXPIPER.HEXPMC.HEXPMMI.HEXPMMI2.HEXRSM2.HEXLSANYO.HEXLSANYO11.HEXLSANYO12.HEXLSANYO2.HEXSEATTLE.HEXSIO2.HEXTIC.HEXTTSM.HEXTUART.HEXTVIDEO.HEXTV803.HEX3VECTOR.HEX3VECTOR4.HEXTVT180.HEXLXEROX.HEXZSIO.HEXuZENITH.HEXuZ100.HEXuZORBA.HEXI D'O q'!"(>wU#7ͺ wx#V!"8>#7~͎Ґ#7# xPYͺڰT]͎Ҙ#7PY#7T]: #77?!"(>w#7gͺS:2##6#~#N#Fʋ!"!>25H&H>1!1!>26H&H>=2#H=B!õ![!,[!:#H=2#HB!`i:5Ht!!&Hͺ!ڵ!Ë!:6Hʋ!&H#ڵ!}|ʔ!è ~ʰ!##~#ʩ!~ʵ!####Ö!7կ > ͐"~ʈ" !#!> ͐" ~#ʈ"#:-""7H!"O#!y"#~!*7H""~*7H!!.S" ʈ"=ʈ"*J">?͐"!!Ì"! ~#ʈ"# ʈ"=ʈ"*">?͐"È"^"Ì"7"CONRDRPUNLSTNUL"½""<@ͺ#>:ͺ# ͺ#x">.ͺ#""րO!# ~#ͺ#"CON:RDR:PUN:LST:NUL:$###0&:ڝ&BT&Ou&Qu&Dʝ&HP#&&&#H&0&:p#0|#A&G&7))))oS#=  _ұ#_$ͺ##> ͺ#> ͺ#~##a{ !'~$րY$T$!$N#F>x!(q#p?   o& ##6 #6 !*w#6$>$!&~2=H!$N#F!(q#p!";H "9H*9Hʙ$!'wñ$*9H "9H*;H ";H!=H5{$*;HDM!*q#px$>$! ~2BH! ~2AH!$~#fo">H"FH!,F!*~# XXX000000E0123456789   ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌ!b>2d>2d!d6#  V ͓+ :b. ̀:bͤ:b͡:bͧ*b͞:NiO>R >ͪc:Wi i !Wi6 u ̓\\BB!C D;F Gʜ Hʉ Iʖ Lʺ MMO6Pʔ5S~Uʨ=XDV cDa>Pͷ:aV \:a? D̓ caOG̓\\XV c !d1!x04!~̓\:!~g0!#x ( !̓\\0v :v 0o&Ͱd w XV D !d ʘ # ‹ Ù 7:b c͓ H:b>Ͱ>ͭG:NiOʡ >ͪ*b͞FH>Ͱ>ͭ͛ ] "]V >ͭ>Ͱ>͓ͪN ]ѷ6 "]6 >Ͱ>ͭV ͹z >ͭ>Ͱ ͹:bG>2eb!b\:bʊ c:b̓\igH2eb> /M> /MG>ͪ>Ͱ>ͭ>Ͱ!H~ #º ͹IH\!HͶ+D͓$ ]ѷ "] ͹z cD>Ͱ>ͭV >Ͱ͹MD:b\ !d~G G"`b>2_b2bb͹G ͹>/!Ix Ml \!>2d=>Ͱ>ͭV Ja><ͷ:aV G!a!b\V V Ga>Pͷ:a7!ad́X G7:d !?!d\d!\\YV 2y:b\A:bA͓AH̓\\YA>ͭ>ͰͿ:_bʸ]]"]ʴ:bpGpͼf*`b~#"`bʴ^—*`b~#"`bʴ^ʩé@©*`b~ʴ#"`b\E¸>2bbGN2bbGW!IG̈́ M͇@L~#"`bʴ0 G!hb@="`bGP6~#"`b0 G%> !d=+T©*`b~#"`bʴ2cb͉|]J"]jdMô2LiM͇@:Li͆J̓2Mḯ ڐM͇@:MiG:cb*ʠJ!G͌Ҫ2_b]"]G: bx\2Li! bV !b>ͳͼ>ͳ! b/"]!hb"`b! ##*`b@"`b />2_b2bb:bF:Li!bFͰ:NiOn:bn!b:Lin>2ebͰ2eb:NiA}: b†:LiM͇@:Li͆:_bʦ:bbʦIM͇@Æ:NiO:Li > /M͇@͉҆̓2MiʆG̈́ چ:NiO:b!b:Mi>2ebͰ2ebÆ:b%:Mi%!hd"`b>2_b2bbÆ: b:Mi\2MiG:bxM͇@:Mi Y: bY:b> M͇@:NiOʆ: bʆ:Mi/ †> /:b> M͇@͓G>Ͱ>ͭyD:NiA 7M̓V :ebʽa>Pͷ:a\!+a \#Oy##~a}MÓMéMÿM *** MITE not installed *** Please run the Install program to select computer type. $!91a2*z({(MM:2Xi2_b2b2b2b2eb>2b!2"Ji!:m2Wi:] s!\d\  !,"b>O2Ni>2 b2 b2b2b2b2b2b2b:F¥>2b>2 b2 b2b2b:12 b:22 b:32b:42b:G2b>2b>2b>2b>2b>2b>2b!fb6# x2e>M G7dNM* kJ7N%: J!Nw#? NgNo"b͞N2b͡N2bͤN2bͧN2 bN2 bN2bN2bN2bN2bN2bN2 bN2 bN2 bN2b!!b<Nw#º N2bN2bN2bN>O >A2NiN2bN2bN2bN2bN2b!d Nw#N2b!g Nw#!fbNw# x)!HNw#9N2 b^Ncu >2^b> M:^b0M>:M> M:^bo&))))))hb\:^b<2^b [ ̓\\?¸J̓MXV 0 2^bo&))))))fbIa>=ͷ:aM!aO ~ 6+:a=2a:aG!a\MDM!,!\!;!\!AK!\!b!b!\ s> >^@Ga>Pͷ:aV !ad́XҩGV :d ¼!?!d\d!e>V GV d>MN>%N!~N#*b|N}N:bN:bN:bN: bN: bN:bN:bN:bN:bN:bN: bN: bN: bN:bN!!b<~N#Z:bN:bN:bN:NiO>ʁ>N:bN:bN:bN:bN:bN!d ~N#§:bN!g ~N#»!fb~N# x!H~N#: bN͘OV >2b 6J̓ O\> #O ~#foFCAPTAPPEWRITECHOEXITMACR;READwSENDRECVRC PROT"HELPBUFFSLAVSCRE@:eb$\O$\F¨2bN$:bGa>Pͷ:a!aǵXGg!Jg>G>2b!2"Ji>2bɯ2y\A>2y\A\O$\F02bN$>2b!fb#~#eOx0M>:M> M~M# Y\@x A\>2d=d́X=G>2d!d́X!G>2dK"d́XK"G\SaO*Ji2}o|g.\*2}o|g.\n:͠\$}2db:db=2db1\O$\FX2bN$>2b:b|!È!͓ڈ!\*Ji2}o|g.\*2}o|g%.\:b6"=!b\\! F#~#Mù$>{>}{/:eb!:<}M:eb!@F#~M#?G: bxq q> M:Xiaò }!Xi5Ç ‡!Xi6O%]!Xi4:ebʲ: b«:Ri²Ҳ/O͊2Ri Iʾ Wþʾ oþ>#Mr to disk and close READ ufn Read disk file and upload it PROTocol Check/select binary protocol SEND ufn Send file using current protocol RECV ufn Receive file using current protocol MACR List defined macro strings BUFFer Print capture buffer statistics SCREen ON Allow incoming character to display SCREen OFF Disable console on incoming characters EXIT Exit to CP/M (Local command only) $DIRECT ONLINE OFFLINEANSORG {Local Command? $ {Remote Command? ${MAIN MENU} G - Go H - Hangup Phone I - Enter Site ID L - Load Parameters from Disk File S - Save Parameters on Disk File Sub-Menus: P - Parameter O - Option U - Text File Upload D - Text File Download B - Binary File Xfer M - Macro Definition C - Command Processor F - Character Filter X - Exit to CP/M {Enter option:} ${MACRO STRING DEFINITION MENU} $ X - Exit to Main Menu {Enter option or ? for help:} ${UNWANTED CHARACTER FILTER DEFINITION MENU} col is: XXXXXXXX $XMODEM CLINK HAYES IBMPC MITE TEXT :dr%Ga>Pͷ:a!ad́Xr%Gd!e>MŒ%G:b2Yi:b2Zi:b2[i>ͤ>͡>ͧI:eb2ny2eb!`>2_qI%& J&%]%"]%>/&d!`qNڨ&w#&:_q<2_q>2fy>/:_q///!`q~/O#0&y/!'IX&ʏ&>TMo&e&>.M%&>RM:fy<2fy &cI̓\\Y&>/J&ʔ&͂(&>2my\!':my/Iڶ&¶&d^N*J!\:Yi2bͤ:Zi2b͡:[i2bͧ:d''Ga>Pͷ:a!ad́X''Gd!e>:b2Yi:b2Zi:b2[i>ͤ>͡>ͧI:eb2ny2eb>2_q>/!'IҊ'A(>TMl'ʧ'R(¢'JR(>'(!I'(2gy/GI'(>'(!`qI'(wO#'I'(4(:gyG:_q'=(A(d!`q~N([JA(#':_q<2_q>.M>/q'A(͂(A(>RM>/q'>/\I`(>/\Id͘O:Yi2bͤ:Zi2b͡:[i2bͧ!IÈ(:d½(Ga>Pͷ:a!ad́Xҽ(Gd!e>M(G:b2Yi:b2Zi:b2[i>ͤ>͡>ͧ:eb2ny2e\W ÷?>#M\H ;o/þo ¾\2Rix] >M> M>M M>^M@M͊M]ʚ"]ì:ebʍ͉ҍ̓CGa>Pͷ:a ^:a0:a͠\}ɷ! 6$I̓\\Y7mN$/$͌?͓3͆*Si"Ui]c"]ʆ͉ڋ͓҆*Ui#|R+ͼ+"Ui|R7̓:bʏ7]ʴ"]͉͊̓é7"SiMITE v2.54 - Copyright (c) 1983, Mycroft Labs, Inc. $XXXXXXX. Bytes Captured = nnnnn/nnnnn. Capture = XXX. $Site ID = $Remote Trigger Character = XXH = nn $Number of bytes captured = nnnnn out of nnnnn available $OFFON HALFFULLNONEODD EVENType HELP S for help with System Commands Type HELP L for help with Local Commands $ECHO ON Turn printer echo on ECHO OFF Turn printer echo off CAPTure ON Turn capture mode on CAPTure OFF Turn capture mode off APPEnd Append capture buffer to file WRITe Write capture buffe $ X - Exit to Main Menu {Enter option: }$ n: XXH = NN $PARc:bo&)))%n#\4#̓\\P!C$̓ B!\\C!>2bB!Hœ!>2bB!I©!>2bB!M¶!>2bB!T!>2bB!X!>2bB!DB!SA">2d#:b!C%4""2Qi͏(4"">2Qi͏(4"",4")"ͯ.4"4"͐14"2ebKJGR©">2d#:b\"&Ü"k"2Qi*Ü"{">2Qi*Ü"†"-Ü"‘"K0Ü"œ"4Ü"2ebKJGX±"V DB!#C$̓\\ C">2bH">2bI">2bM">2bT#>2bX#>2bD:bo&)))%%\${BINARY FILE TRANSFER MENU} P - Protocol = XXXXXXXX S - Send File and Return to Link R - Receive File and Return to Link X - Exit to Main Menu {Enter option:} $Now Sending $Now Receiving $All Files Sent $All Files Received $Checksum Error $ C - CLINK / XTALK H - HAYES I - IBMPC Async M - MITE multi-file T - TEXT (mainframe) X - XMODEM Enter new protocol code or CR for no change: $Unknown message type $Current Proto b2hy>2_q:hy)!"bud!`qN:)w#*bu#"bu x )G)>2hy*bu|)]a)"]a)J)>2iyW+]z)"]X)ͱ+҈)>CM)*Ui|˜)>TMG):jy)º)>.M:_q<ڴ)2_q ))>RM:iy)G)>UM>2iyW+z)>2iyW+z)d^N\*J!:Yi2bͤ:Zi2b͡:[i2bͧ:dI*Ga>Pͷ:a!ad́XI*Gd!e>:b2Yi:b2Zi:b2[i>ͤ>͡>ͧ:eb2ny2eb>2iy]ʢ*"]¢*I$+ͱ+Ұ*>CM**Ui|*:iyʈ*>TM*:jy*>RM*$+*>UM>*>2iyW+È**dyDM!dudx+~N+[J$+# +>.M*>2iyW+\Id͘O:Yi2bͤ:Zi2b͡:[i2bͧ>/!"ky:iyͫ+Ÿ+*bu|ͫ+}ͫ+:Qiʅ+:_qͫ+>ͫ+DM!`q~ͫ+# x+>ͫ+*ky|/}//Ü,! I+¹+!"UiÔ,!Iڔ,2jy),Iڔ,gIڔ,o"dyDM:Qi,I2_qIڔ,,!duIڔ,w# x,Iڔ,Œ,Iڔ,WIڔ,_!"ky:jy͜,{,*dy|͜,}͜,:Qia,:_q͜,>͜,DM!du~͜,# xk,>͜,*ky{Œ,zŒ,Ô,!7!G*kyg)ҵ,|g}o"ky ,xGâ,:d,Ga>Pͷ:a!ad́X,Gd!e> 1>UME1!`qf1d!`q~N#1>.M>/0d͘O\0$J1>/:Yi2bͤ:Zi2b͡:[i2bͧIw#Oj1IOʍ1>RM>/f1:d¿1Ga>Pͷ:a!ad́Xҿ1Gd!e>M1G:eb2ny2eb!'I2=3>E/> /1X\3A21!']'2"]=3d!`qN*3 /2 J2w#x/26x2}y͗3=3!"{y:}ysy\:syh5w3=3c3:tyh5w3=3c3:uyh5w3=3c3!`q"`u͉Ҹ2̓¸2͉Ҩ2̓¨2*`u~2#"`uh5w3=3c3Ø2*{yvy.\!vy~/w3=3c3#2> /! NI 3=3\A"3N2>RMP2>.M2͗3M3>E/> /M3͗3M3>X/> /d^N\*J!:bGt3ͼj3: bʒ3:bʒ3IҒ3ʕ37?7:bʸ3!Iұ34 ž3:b3! NI343M!b3!:b2~y:~y 4=2~yI443M37?7:d@4Ga>Pͷ:a!ad́X@4Gd!e>:eb2ny2eb!`Ih4R5Xa5E_4!'>A/> /!'!"{y~5Ҩ4a5>/> /Ä4ER5~5 »4>00yOOO±4!`qy4~5w# 46!I 4>00)DM)) o5$ S - Stop Bits = X R - Role (ANS/ORG) = XXX M - Mode (Duplex) = XXXX N - Phone Number = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX I - Modem Init String = XXXXXXXXXXXXXXXXXXXX H - Dial Prefix = XXXXXXXXXX X - Exit to main menu {Enter option:} $Enter initialization string: $Enter dial header string: ${OPTIONS MENU} E - Escape Trigger Char = XXH = NN M - Macro Trigger Char = XXH = NN B - Break Trigger Char = XXH = NN K - Local Command Char = XXH = NN R - Remote Command Char = XXH = NN C - Caps Lock = XXX L - Auto LF after CR = XXX T - TWX Mode = XXX D - Direct Connect Mode = XXX Q - Expand Tabs to CON: = XXX X - Exit to Main Menu {Enter option:} $c:bA":bB":bmB":bB̓\:bBg:bB̓\:bBgA̓\\C<:b¹<:b±<Ga>Pͷ:a;!aǵX҇<G;g!Jg>;¦<G;>2b!2"Ji>2b;2b;F<:b2b;P<:b2b;Q<Ͱ2b;R=!2"JipHM-G:eb2ny2eb!`II9-ʰ- Jð-%->/]V-"]ʰ-d!`qNڰ- ^-w# v-^-!`q͉Ҟ-̓ʺ-ž-͉Ҏ-̓Ž-~#/ y->.ME->/> /d^N\*J!:d-Ga>Pͷ:a!ad́X-Gd!e>:eb2ny2ebI>/!:I<.ʕ.>TM.Q..Jß.!!`qIڕ.w#ʟ. Z.>/!`qd~#N y.> N>.M>/Q.>/> /d͘O\I:d.Ga>Pͷ:aa!^isY.Gɯ2dd!^iZ!^i"\i/>/G:b2Yi:b2Zi:b2[i>ͤ>͡>ͧ:eb2ny2eb̓̓̓!IIT//>/A/A/!'*\i~/d~#m/"\id!e>M>/!d 0/#d͙[\d!`qN/w#¯/>/!`q0/>.Mç/>/d^N\5/J>/ $:Yi2bͤ:Zi2b͡:[i2bͧ~#/O0/IG0900C0>UM7:b2Yi:b2Zi:b2[i>ͤ>͡>ͧ:eb2ny2eb̓̓̓!`IIJ1‹0>/!'IE1<1›0!d f12dd!e>mN0E1#d͙[\>/I010JJ14:{y5:|y$5>N/> />RMÊ4!`qd~65#N*5> N> N>A/> />.MÄ4d͘O\I!/*{yoy5$"{yI*{yoҎ5$"{yc*b8.\:b728: b]91!H~9\!9\!g9 \:b8P:b129:Ni=9@8̓\\XV B261Ga>Pͷ:aʔ5a͠\6͞6"bÔ5DG6:b2bͤÔ5MY6: b2 bÔ5No6_G!HW8Ô5Pˆ6:b<62b͡Ô5S6:b2bͧÔ5Rº6:NiAʲ6>A2NiÔ5>O2NiÔ5H6C:!g W8Ô5I6%:!W8Ô5DÔ5xGÔ5c: bF;": b:̓\: b:g: b:̓\: b:g:b:̓\:b:g:b:̓\:b;g:b;̓\:b%;g: bf;":b;":b;": b;"^:̓\\XV C¨7: b2 b6E¹7ͰN82 b6M7ͰN82 b6B7ͰN82b6L7: b2 b6T7:b2b6K8ͰN82b6R!8ͰN82b6D38:b2b6QE8: b2 b6D6xG6a>Pͷ:aʊ86 #p8!a~ʊ8#~8{PARAMETER MENU} B - Baud Rate = XXXXX D - Data Bits = X P - Parity = XXXX ;S=Ͱ2b;W#=2y\A;A3=>2y\A;T‘=>2y*JiDM!2yOxGxʂ=~#M |=:y<2y|=>2y̓|=; K=\7M̓;XV D;xG;c:bC":bC":bC\:bC̓\:bCg:btC\%C̓\\U?>2d!"y!:d9>Ga>Pͷ:aʨ=!ad́X9>Gz@d!e>MU>Gz@2y:eb2y2eb]t>"]ʚ?͉ҏ>̓>Iڏ>„>dNښ?2Li:bʬ>:Li c>:Li >:y> >> /> :bG>ͼ>G: bx\2Li/>2y: b?:b?I?ʚ??!Li?*y#"y?:LiM͇@:Li c>2y:bT?IE?ʚ? 8?> M͇@:bt?! NIt?M͇@!ba?!:b2y:yc>=2yIڀ?M͇@À?:y2ebd^N:bʿ?*yJ.\\J:y2eb\Hz@G@1Ga>Pͷ:aʨ=a͠\q@|q@}2bè=T@Ͱ2bè=D?@1Ga>Pͷ:aʨ=a͠\q@|q@}2bè=EQ@:b2bè=Hc@:b2bè=XV Dè=xGè=!2ebG:bʔ@\:bZA*JiZAZAZAZAZAw#"Ji*|@}@H2b:bZA*Ji2|ZA@}ZA:b/!I {d:} stands for a drive name (A:,B:,etc.) {afn} stands for an ambiguous filename, for example: *.ASM, F*.*, etc. {ufn} stands for an unambiguous filename, for example: FRED.ASM, MITE.COM, etc. {$att} stands for a file attribute, which may be any of the following: {$DIR} - make file visible in directory {$SYS} - make file invisible in directory {$R/W} - make file Read/Write {$R/O} - make file Read/Only Type to return to SYSTEM COMMAND PROCESSOR{Command Error} $ Type to continue, X to exit to Main menu:$Enter new value: $Enter new ASCII character: $Enter new phone number: ${Illegal Value} ${Enter Filename:} ${No Directory Space} ${Filename Error} ${No Such File(s)} ${Unable to Close} $Capture complete. Now closing file ${Warning}... Carrier still present. Hangup (Y/N)? $Awaiting Incoming Call - abort with ESC $Capture Buffer Reset to Empty ${Not in Capture Mode, request ignored} $Now resuming previous call $ {*** Capture Buffer Overflow ***} $Tr string transmission with ESC Type to continue$Type to continue${Insufficent Memory} $ {Macro String abort} $>2:*>2>2:*>2>22*>2>22*>2!,w! 6! 6!*6#6`i)|!&w!'6!$q#pN!*~#,NL]YN!(N#F p+q!*N#F p+qTN!,~>YN7!,wN! 6! 6!*6#6`i)|!&w!$q#p!(q#pNNN2yDisk Full - Job Aborted $ր\OOʍO_ÍO=ʒO=O_ÍO=TO :O :y<2y$OÍO!y4 KO2y> _ÍO=’OÍO!*~#fo)|!&uO+^’O!(N#Fp+q!*N#Fp+q7!,~³O>NªO+^OOUnable to Close - Job Aborted $!y6 #O!yP P\w#PÌP<~6P#=6P 6P P!ýX%~TP#HP!%ýX!PyO#iP ʃP##~bPÌPP^#VVCOPY PDIR [QDRIVE0RERA IRHELP RLIST RREN SRESET;SSET MSSIZE eTSPACE"UTYPE [UUSER U!y9z\9z(Ä́ @2MiM*Jiw#"Ji:b@:Mi\@*Ji2}O|Gg!2xHA~N# :A!2"Ji!:b/:bjAH*Ji2}O|G!2gxʊA~N# |A:y¾Ag͘O£AGGg͙[\ ͹2b2b!2"Ji{TEXT FILE DOWNLOAD MENU} C - Capture Mode = XXX A - Append Captured Data W - Write Captured Data R - Reset Capture Buffer P - Printer Echo = XXX T - Type Capture Buffer F - Flow Control = XXX Q - Flow Start Char = XXH = NN S - Flow Stop Char = XXH = NN X - Exit to Main Menu {Enter Option:} ${TEXT FILE UPLOAD MENU} U - Upload Text File D - Interchar. Delay = XXX E - Await Char. Echo = XXX H - CR/LF Handshaking = XXX T - Turnaround Char. = XXH = NN G - Garbage Char. Count = XXX X - Exit to Main Menu {Enter Option:} $Awaiting Carrier (ESC to abort) ${Carrier Detected} $No Carrier Detected ${Carrier Lost} $Illegal Option ${SYSTEM COMMAND PROCESSOR} Enter command, HELP or ? for details: {Explanation of symbols used:} ansmission Complete $Now Dialing: ${There is already a file with that name.} Overwrite it (Y/N)? ${Maximum Error Count Exceeded} - Try again (Y/N)? $ {Send operation aborted} $Attempting to Synchronize $Enter New Macro String: ${Receive Aborted} $File Received ${Timeout} {Send Aborted} $File Sent $Are you sure (Y/N)? $Resuming Link $ {Disk Full} ${Invalid Parameter File} - Load aborted ${Warning}... old parameter file $Enter Site ID: $Site ID = $nnnnn Compare Errors $The following special characters are available: @W Wait until no chars for 1 second @Pi Wait until no chars for "i"/10 second @Tn Trap on ASCII character "n" @E Turn on wait-for-echo @N Turn off wait-for-echo (default) @Li Link to Macro String "i" (0-9) ^M Carriage Return ^n Control character "n" If Macro String 9 is defined, it will be automatically sent once the connection has been established. If Macro String 8 is defined, it will be automatically sent in responce to a Ctrl-E in TWX mode. Abort macro!fz>MQUy!y>mN1QzV9zNCQyN1Q9z^Ny͘OZQVpQ:xQxQ!,R\2yT!z"犯29*~$R ~R*~ªQ:<@M:* ~Q>xM* #~MyQ> M Q͜\:9Q> M>|M> M*":9<29ڊQ\ÆQ*"ÊQ:9\*.*:yBRZaAM\=_:%\2;T!z"*~Ry\:yR:yR>2<y͙[:;Q¤R>?M> M̓\Y²RyFV\* "]R:<UVy!y>MRUNS\͜RMa^NySU!yyFwx# SyU _ͲUYSV:y$S!Sy\O#kS ʈS##~dSÍS^#VUDIRSSYSSR/WSR/OST!z~@T ~wïST!z~@T ~wST!z~@T ~wST!z~@T ~wT!zsY,T5V7ɷ8T!z`U7!z~y\yy͙[\CTͲUqTV2<T!"=!z"*~Uy\:yT>2<y͙[y###~#2?~2@*y:@O :?GͪUT:?=T)T*="=NV.\NV* "OY*Y>?WYéX©XSY! ~\OY# OY=OY*FY>?WYOY%YSY7WYCONRDRPUNLSTNUL""6Za<2>+222!CYO:y¯Y+Y-Y"¿Y:/2×Yw#—YZ6!CX́XZ:XY:2XY22d!Z ZZX͙[\Z2:-pZZ*~PZ# O#1Z GZ#####Z!Z*w#VZ"6:<2*Z*~ZZ# #O‹Z Z! ~#¢Z:=2* "tZwZ ~tZZ2ÑY:7No files match $"622$[\6>2Â[Za2O@[=@[_>2ʂ[o&)))))F*p#w#e["6!4L[:ʒ[:_:[ª[[<@M>:M Mx[>.M¶[[րO![ ~#M[CON:RDR:PUN:LST:NUL:d\ \\%\ \y0ů2'Z\Z\dZ\ Z\>2Z\}o|gj\]\ zz\:> \02͒\͒\ ڛ\0ʪ\á\\06a:`B|`Oʝ`Qʝ`D`H`6a> M> M_~#\a{&a06a:a0aA6aG6a7))))o`:14a}/o|/g#7!21+Ka-21> \> \G|oa}x!(q#p?   o& ##6 #6 !*w#6'^>(^!&~2!$N#F!(q#p!" "*]!'w^* "* "!5]*DM!*q#px'^>(^! ~2! ~2!$~#fo""!,F!*~#foxc^ )|22ʲ^Za2%ʁ^=_*ʡ^_* "!5^:%_!*6#6!$N#F!(q#p!,~ʆ_2:! _>2! ~2:w! ~2:w*":2ʆ_‹_*‹_#K_"!58_:ʆ_! :w! :w>Disk Full - Job Aborted $##~#2&##^#V#"'!")OyO_*)#")_O*'+"'|_*):&)=_o&"/!"+!*+#"- .`#"`7D`O~q#7` */*-#"-fa` */+*+#"+fa`8a&a\B&a06a6a)o`8a&a\O&aQ&a06a6a)))oà`8a&a\D&a06a 6a)T]))хo`$`8a&a\HÅT:<U*=kV.\]VUͲU.UVZa2::yBU=_ͫ_V.\V::_y!y>MtUUNچUM͜tU\^N:y0ڝUҝU _0M>?M\|g}o* ~No such file(s) $All files? $Filename conflict $Attribute error $System Command Error $nnnnnK Bytes Available $Filename Error $ erased$nnnnnk Bytes $Total size = nnnnnk Bytes $No directory space $Unable to close $Not available on this DOS $Available commands: COPY new=old copy one file to another DIR afnx list files in directory DRIVE d: set default drive ERA afnx erase file(s) HELP print available commands LIST ufn list file to printer REN new=old rename file RESET make all drives R/W SET afnx atr set attribute on file(s) SIZE d:afnx display size of file(s) SPACE d: display space remaining on disk TYPE ufn type file to console USER n set user number $կ > WY~OY ›X#ÍX> WY ~\OY#:X"A!^YO#XyX#~½X*AX~*AÛXÛX.Y OY= +++*]0~#]]]]]]]]]]]]]]]]]!'~X]րڰ]«]!$N#F>x!(q#p?   o& ##6 #6 !*w#6'^>(^!&~2!$N#F!(q#p!" "*]!'w^* "* "!5]*DM!*q#px'^>(^! ~2! ~2!$~#fo""!,F!*~#foxc^ )|22ʲ^Za2%ʁ^=_*ʡ^_* "!5^:%_!*6#6!$N#F!(q#p!,~ʆ_2:! _>2! ~2:w! ~2:w*":2ʆ_‹_*‹_#K_"!58_:ʆ_! :w! :w>Disk Full - Job Aborted $##~#2&##^#V#"'!")OyO_*)#")_O*'+"'|_*):&)=_o&"/!"+!*+#"- .`#"`7D`O~q#7` */*-#"-fa` */+*+#"+fa`8a&a\B&a06a6a)o`8a&a\O&aQ&a06a6a)))oà`8a&a\D&a06a 6a)T]))хo`$`8a&a\H!a{   `OE!y6$ -7rBo&))T])))!y!>15:<15>{15Y/e56!'":}15Y/!:&1515\0!:</"͞) :<@"ͧ*͞)Z!:<>L">15͞)>15>@2G>)15ç"#(l'ͷ**͞)!2"ͫ'-L3#ͷ&"x0e5G)͍'ͫ'ͷ**͞)b)~F9#^#V##!2)))U~,L3G~`2<2<#~2<~?>T#=2<#^#V#^#V#"<^#V"<:<~#*<!:<@ʏ#"<*<#w"<*<~ʫ#¶#,L3;+"<*<+"2>! ! !ͧ!c !ͧ>2>>:2>>2>`i6#6`i~#fo! ~#foB! ~#fo`i~#fo)~#foͪ`i^#Vr+s! ~#fo! !ͧ!/ !ͧ`iw#w`i~#fo͡! s#rzœ! 6 #6`i~#fo! ! ~#fos{ `i~#fo! 6`i^#Vr+ss! n}! ͪ! n}`ͭ!9 ! ~#fo!S!ͬ >!  ! ~#foͯ #|Z ! ~#fo!s!ͬ ! Ͳ >!">!ͦ ͵ ! ͸ ! Ͳ ! ~#fo!  ͻ !ͦ ! ! ~#foͩ #| ! ~#fo!!ͬ ,͵ ! ; ! s#rz!  ! ~#fo #|! ~#fo!!ͬ # !ͦ ! Ͳ !  !  Ͳ !9 %s -> %s: Can't open %s for input pass 1 Can't create %s analyzing, squeezing, Can't open %s for input pass 2 ERROR - write failure in %s done.)à1ó1!9DM*6}! 6`is{ ! 6`is2!`is{2`in}A!k`in} c`i6 *6}c! !`in&k!9ÉÜ&Û%ó1*ö1&!9DM{26{26{26! ~#fo͐ ~#fo)"6! 6#6`i6#6͐͐ ~#fo҆*6}Æ! ~#fo͐)~#fon}<|ʹ+>1o! ~#fo͐)~#fo#n}0L! 6! ~#fo͐)~#fo#w#||! ~#fo͐)~#fo#!!z}>26!! ~#fo͐)~#fò|¶*6&|g}o}26!64! ~#fo͐)~#fo#"6! ~#fo͐)~#fo#n}! ~#fo͐)*K͞+655O'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:771.5 08/29/81File squeezer version %s Richard Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 Accepts redirection and pipes. Omit other parameters for help and prompt Parameters are from command line or one-at-a-time from standard input and are output drives and input file names. Empty to quit. *D % &Û%:&ã !9DM! ~#fon}-j *>}͝}2>2 ! ~#fo#n}: ! ~#fon&5 | ! ~#fo##n} ! ~#fo!; 8 ! ~#fon}2>2 ! ~#fo!M !; 2 ! ~#fo`is#r`i~#fon}8 `i~#fon}* `i~#fon}?, ! ~#fo!b !; 2 `i^#Vr+s ! 6!>! > ! ~#fo#n}:i ! ~#fo##q ! ~#fo! > ! `is#r`i~#fon} `i~#fon}. `i~#fo#n}· `i~#fo6 `i~#fo##n}q Q ! ~#fo!} !; 2 `i~#fo###6`i~#fo##6Q `i^#Vr+sÆ ! ! > ! ! ~#foA !9 Output drive =%s ERROR - Ignoring %s Ambiguous name %s ignored %s ignored ( already squeezed?).QQQ &Ü&Û%&:'!ßcNk'è(!9DM! ~#fo! ~#fo!Gͦ ! ! ~#foͩ #|!s#r! ~#fo͐)"61*6&|g}o}26! ~#fo͐)~#fo#n}\!!z}! ~#fo͐)~#fo#̓!:! ~#fo͐)~#fo#͆#|! ~#fo͐)~#fo#!!z}!64*6}F͐! s#r͐͐ ~#fo'! ~#fo͐)! ~#fo͐#)~#fos#r! ^#Vr+s͐ ^#Vr+s`i^#Vr+s*6++"6l͐ ͐s#r! ~#fo͐ ~#fo)w#wz! ^#Vr+s`i^#Vr+s!9Can't open %s ! s#r~#fo#|#! ~#fo^#Vr+s`i~#foͨ!  6#6!  ~#fo#|T!Oͫ!  ~#foͮ!  ~#fo͉s#rͨ! s#r! s#r! ~#fo! ~#fok">~#fo|! ~#fok">##6! ^#Vr+s)! ! ~#fos#r! ^#Vr+sÊ! ">6#6`i^#Vr+sæ!9!9DM! s#r! s#r! s#r! ~#fo! ~#fok">~#fo! ~#fo! ~#foғ! ^#Vr+s! ~#fo! ~#fok">~#fos#r! ^#Vr+sC! ~#fo#! s#r! 6! w#w! ~#foo! ~#fok">~#fo! s#r! ~#fo! ~#foa! ~#fo|a! ~#fok">! ~#fos#r! 6! ^#Vr+s! n}+! ~#fo! w#w! ~#fo! ~#fok">~#fo! ~#fo͉s#r! ^#Vr+sÒ! 9ý!9DM! ~#fo++`is#r`i~#fo|?! ~#fo+`i~#fo! ~#fo`i^#Vr+s!9Qý !9DM`i6#6! ~#fo! ~#fo~#fo! s#r! ~#fo! ~#fo! ^#Vr+s)~#fos#r! ~#fo+!! ~#foK! ~#fo~#fo! s#r`i~#fok">! s#r! ~#fo`i^#Vr+ss#r! ~#fo###! ~#fos#r! ~#fo! ~#fos#r! ~#fo! ~#fok">~#fo! ~#fok">~#fos#r! ~#fo##! ~#fok">##n&! ~#fok">##n&Ns! ~#fo+!! ~#foK`! ~#fo~#fo")L! 9!>2!>!"r+ó1!9DM*!>};!R!!!">2!>! ~#fo!">*>>a!>p!>m!>z!!>2!>!!!">! ~#fo!">*>¶!*>Ҷ!*>#">Å!*>>!>!>!>!!*>">>2!>*>>2!>!>2!>*>">>2!>*>!"!!!Bug - bad state 6"ä+Û%ó1!9DM! ~#fo! ~#fo-"! ~#foz"!|"!0"!3"Write error in putw() ß"k'Û%ó1!9DM! ~#fo! ~#fo͖"#|"!"!͙"!͜"Write error in putc() ")!9DM! ~#fo"`is#r`i~#fo#|.#*>`i~#fo">`i~#fo7#!9I#r+ &!9DM*>}#!#C#`iw#w͐Һ#͐|’#͐!#F#͐k">~#fo!$F#`i^#Vr+sg#!$C#!9 Counts after 1st algorithm and maybe scaling %4X %5u $ &!9DM*>}3%*)L!<% $`iw#w͐$͐k">~#fo|ʼ$͐k">~#fo͐k">###~#fo͐k">##n&͐k">~#fo͐!W% $`i^#Vr+s2$!u% $`iw#w͐3%͐+Ln&'%͐),M~#fo! ͱ! ~#fo! ʹͷ*)L!ͺ#|>ͽ>22O!"0O! 9*** rescaling ***, l*"Ó"!9DM! ~#fo!vf! ~#fo*>f! ~#fo#n}:¸! ~#fo##s#r! ~#fo! ~#fon&i! ^#Vr+sn}¸*)Lͩ!*)L! s#r! ~#fo! ~#fof! w#w*)L`is#r! ~#fo! ~#foE`i~#fok">###~#fo! s#r`i~#fok">~#fo! s#r! ~#foͩҫ! ~#fo#ü*)L! ~#fo! s#r! ~#foͩ! ~#fo#*)L! ~#fo! s#r! ~#fo! ~#fof! ~#fo! ~#fof! ^#Vr+s`i^#Vr+s1! 9T !!9DM`i6! 6*2O! nѯgW! n}‹`in&Ï`in*3O! ng|g}os*3O! nѯg"3O*2O! nѯgW}22O`in&Ï*2O&+`in*3O! ng|g}os! n*2OѯgWs*0OU>22O! n}M!R`in&Ï! ~#foQ"0O#|q!"0O*0O),M~#fo"3O*0O+Ln}22Of!9!9DM`iw#w`i~#fo`i~#fok">w#w`i~#fok">##6`i~#fok">###6#6`i~#fok9DM`iw#w`i~#fo3`i~#fo+L6`i^#Vr+s !9B<!9DM! ~#fok">###~#fo`is#r! ~#fok">~#fo! s#r`i~#fo#|! ~#fo#|! ~#fo+L! ~#fos! ~#fo),M*.O! ~#fo|g}os#r! ~#fo! !ôî`i~#fo#|`*.O! ~#fo}/o|/g|g}o".O`i~#fo! ~#fo#?#|`!ô! ~#fo#|ʮ*.O! ~#fo|g}o".O! ~#fo! ~#fo#?#|®!ô!ô!9H ý!9DM! ~#fo?#`is#r! ~#fo! ~#fo)~#fo! s#r`i~#fo! ~#fo `i~#fo! ~#foq! ~#fo`i~#fo#)~#fo! ~#fo`i~#fo)~#fo|q`i^#Vr+s! ~#fo`i~#fo)~#fo! ~#fo| ! ~#fo! ~#fo)! ~#fo`i~#fo)~#fos#r! ~#fo`i~#fo)! ~#fos#r! ~#fo`i~#fo! ~#fo!9!9DM! n! nѯgWͩ= ! n&B ! n&!9DM! ~#fok">~#fo! ~#fok">~#foҋ !&! ~#fok">~#fo! ~#fok">~#fo ! ~#fok">##n! ~#fok">##nѯgW !&!&~#fo͐+Ln&͐͐!% $`i^#Vr+s$!9 Encoding tree - root=%3d %3d w=%5u d=%3d l=%3d r=%3d Huffman codes %3d %4X l=%2d c=%4x ä%+d/!y9DM! `i͞%͐`i͡%%!9%//!9DM! n&%|ͣ&! n&%|ͣ&+r+!y9DM! `i&`i&!9!9DM͐`is#r͐n}d&! ^#Vr+sL&! ^#Vr+s͐ns! ^#Vr+sn}d&͐Ó&!9â&u2!9DM͐!͐͟&s#rz&!͐##w#w͐~#fo&ù2!9DM͐͐&s#rz '!͐͐s#r͐##6#6͐~#fo@'2!9DM͐Z'!͐~#fo='w'2à13!9DM͐+|—'! n&n'͐++|µ'! n&!q'͐+++|'! n&!q'͐++++| (! n} '! !q'! n&!q'͐##^#Vr+sz=(͐^#Vr+s! ns&!͐͐~#fot'g(!͐##6#6͐͐s#r͐^#Vr+s! ns&ô(3Å33!9DM͐(!)͐##~#fo(!)͐##~#foVr+sn`is`in&,}D8-Ut-X}-Oʆ-C-S-)/͐~#fo|t-! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 Ì-! 6Ì-! 6! ~#fo! n&! ^#Vr+s~#fo! +ѯgs#ru.! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+su.! n}.! 6#6! ^#Vr+s~#fo! s#r͐n}u.͐|u.! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+s+.͐6! ! s#r! n}.! ^#Vr+s!.! ^#Vr+s! n}.!0.! sÑ.͐! ^#Vr+sns{.! ^#Vr+s.! n}&/! ^#Vr+s!&/! ^#Vr+s6 . +=5#~+5##5a{ !pr5!*w#S5:**j5*!ѷ! , FNxg>Goy5$`is#r͐͐͐~#foͫ(͐5)!)͐+?`is#r͐##~#fo|)!͐͐͐ͮ(͐##~#fo͐s#r͐~#fo͐s#r!!͐~#foͱ()͐##6#6͐͐s#r!)!9*à1A4!9DM͐|*)*͐+++|/*!)*͐##^#Vr+szY*͐^#Vr+sn&*!͐͐~#fo)`is#r!ږ*͐##^#Vr+s*͐##͐?+s#r͐͐s#r͐^#Vr+sn&*!9!9DM`iw#w! ~#fo͐n! ~#fo͐n}=+! ~#fo`i^#Vr+sn}:+!i+*! ~#fo͐n! ~#fo͐nѯgWi+!9x+2!9DM͐n}ʢ+! ^#Vr+sn&u+À+ê+k'!9DM͐͐)ͧ+|+͉͐͐ͧ+|+͐!,,001h1!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{U/`in}%?/! ! s#r! 6#6! s! s! s͐n}-”,! ^#Vr+s! 4͐n}0¤,! 4͐n&+},! +,!! s#r! ^#Vr+sn`is{. -! +! s#r! 4! ^# 10!9DM`iw#w͐~#fon&1}X1͐ ?͐^#Vr+snѯg`is#r1͐_1!9n1/!9DM! n&k1|ʕ1! n&Ú1! n&7:O*o`  !\&!7*!1&*!2&1!, !\&!TELk762÷4Û%ó17*^#V#z>2+V+^+I2*-2!g2!0232Broken pipe 7,2q*&:q):ʱ2=ʱ2=r:qo&2ö1u27*ͼ2\!*Ϳ2#  3 > _ 37:)~:,"s!"u*|*uʃ3*~#Z3"*s*uƒ3#"u*+"G37*|DM**3ڴ3><3~# x¨3 ><3~+ x3|}3Ü57:,*3:*3}|2q /4%4:qw 4! {w7:)~:,"s!"u*|ʗ4**sœ4! ~—46*u*+"*"*u#"uc47*!9& 6C#6O#6M4*|4!\&5!\!91[ !͖ ͈2g [ !Ϳ7#͈!"#*#~[ ͢"#[ Y͕[ ! >|![  ͢>$222!>š;͈[ Ϳ͓ š> ͓ÚP͈[ ?^͈![ ͢[ =I [ Syntax error in command $No such file(s) found $No directory space $Write error $Unable to close output file $!,w! 6! 6!*6#6`i)|!&w!'6!$q#p!*~#ͫ!(N#F p+q!*N#F p+q!,~>7!,wl! 6! 6!*6#6`i)|!&w!$q#p!(q#puy͈u2#Disk Full - Job Aborted $ր¯4_4=9=_4=  :#<2#4!#4 2#> _4=94!*~#fo)|!&͊9!(N#Fp+q!*N#Fp+q7!,~Z>͓Q͊sv͈Unable to Close - Job Aborted $~ʫ###6####Ù! "#2#2#!#=, ʿw#¿ú:# ʙ:##:# ~Aborted $կ > ~ $ # >  ~ #:} "c$! O#M yh #~F *c$r ~*c$$ $ .ʣ = *š >? 2 2 ! ~ # = * >? ® 7 CONRDRPUNLSTNUL   0 :{ B2 OS QS D{ Hʧ   B 0  )o5   O Q 0  )))oV   D 0 )T]))хo~ $~   H 0 : 0 A G 7))))oê :e$ }/o|/g#7!2e$+ -2e$_a{ N#F!(q#p!"# "#*#O!'wg*# "#*# "#!#51*#DM!*q#px†>Ç! ~2#! ~2#!$~#fo"#"#!,F!*~#fox )|2#2#:2b$=_*#͈*# "#!#5:b$_!*6#6!$N#F!(q#p!,~2#:#! s>2#! ~2#:#w! ~2#:#w*#"#:#2##*###ª"#!#5—:#! :#w! :#w>Disk Full - Job *K͞+) (35'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77ú##6#~#N#Fʐ'>2##>66>2##>=2#=Gú`,`:#=2#G`i:#y!# ںÐ:#ʐ# ں}|ʙí~ʵ##~#ʮ~ʺ####Û7"#62#2#͢6>2#B:2#O=_>2#Bo&)))))F*#p#w#%"#6!#4 :#R:#_:#e:<@ >:   x>. q$ È>  >  ~#¢!'~ʷր !$N#F>x!(q#p?   o& ##6 #6 !*w#6Æ>Ç!&~2#!$N#F!(q#p!"# "#*#O!'wg*# "#*# "#!#51*#DM!*q#px†>Ç! ~2#! ~2#!$~#fo"#"#!,F!*~#fox )|2#2#:2b$=_*#͈*# "#!#5:b$_!*6#6!$N#F!(q#p!,~2#:#! s>2#! ~2#:#w! ~2#:#w*#"#:#2##*###ª"#!#5—:#! :#w! :#w>Disk Full - Job !a{   `OE!y6$ -7rBo&))T])))!y!>15:<15>{15Y/e56!'":}15Y/!:&1515\0!:</"͞) :<@"ͧ*͞)Z!:<>L">15͞)>15>@2G>)15ç"#(l'ͷ**͞)!2"ͫ'-L3#ͷ&"x0e5G)͍'ͫ'ͷ**͞)b)~F9#^#V##!2)))U~,L3G~`2<2<#~2<~?>T#=2<#^#V#^#V#"<^#V"<:<~#*<!:<@ʏ#"<*<#w"<*<~ʫ#¶#,L3;+"<*<+"21>:21>21`i6#6`i~#fo! ~#foC! ~#fo`i~#fo)~#foͪ`i^#Vr+s! ~#fo! !ͧ!2 !ͧ`iw#w`i~#fo͡! s#rz! 6 #6`i~#fo! ! ~#fos{ `i~#fo! 6`i^#Vr+st! n}! ͪ! n}aͭ!9! ) !"5! ) ! !- ~#fo!, `i# ! s#r! ~#fo|^ ! ~#fox !- ~#fo!! j!"1!"1!  w#w!  ~#fo! ~#fo !  ~#fo))1`i# s#r!  ~#fo))1##`i# s#r!  ^#Vr+sÌ *05|ʯ! / `i2 ! s#rzʜ!' ~#fo*05Ҝ! ~#fo|g}o! s! n& Y! n&~ҍ! n} v y ʄ ʄÇÙ!' ^#Vr+sÍ! 6.! n&/ *25}ʬ! / j! ! 5 #|! !! X`i2 ! s#rz2*1! ~#fo"1! ! ~#fo8 #|/! !! X! ~#fo*1X! !! ! ; ! > `i> !)9Can't open %s %s is not a squeezed file %s -> %s: %s has invalid decode tree size Can't create %s Write error in %s ERROR - checksum error in %s Á$+$!9DM*)}P! )`is{ M! )`ise!`is{e`in}t!Þ`in} –`i6 *)}–! !`in&Þ!9üI+$.$!9DM{2){2){2)! ~#fo͐ ~#fo)")! 6#6`i6#6͐͐! !-! n&#|0!!*)&|g}o|E! |e!+++|e! n} }! !! n&!File output error; disk full? !"5!c"5]!9DM*5*5+"5* 5TT! ~#fo`is#r!(`i~#fo" 5* 5#|!0u"5* 5TT! ~#fo"5|F!TT*5++"5* 5T!9cÁ!9DM`iw#w*5#"5! ~#fo`"5#|!@!"5`i~#fo))1*5|g}o)~#fo`is#r`i~#fo))1*5"5|g}o)~#fo`is#r`i~#fo|q`i~#fo#`is#r`i~#fo+!1`i~#fo`is#r`i~#fo@!9Rs!!y9DM! `iL͐`iOw!9ÆL"!9DM! n&̓|ʭ! n&ò! n&þ{"!9DM`iw#w! 6#6͐ n! s{ ! n} ! ^#Vr+s! n}-! 6#6! ^#Vr+s! ^#Vr+sn! sͻ|_͐ ?! nѯg`is#r͐͐?o!9Áê"L"!9DM! n&{|ͣ®! n&~|ͣûs"!y9DM! `i͵`i͸!9$!9DM͐!͐1.5 08/02/81File unsqueezer version %s Richard Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 Accepts redirection and pipes. Omit other parameters for help and prompt Parameters are from command line or one-at-a-time from standard input and are output drives and input file names. Empty to quit. *J ÀøIxò !9DM! ~#fon}- ! ~#fo#n&8 F͝}225}ʏ ! ^#Vr+s!"05! ~#fo#n} ! ~#fo#; "05| ! ~#fo#! !> ö ! ~#fo#n}:O ! ~#fon&A |5 ! ~#fo##n}2 !"05! ~#fo! D ! ~#fon}21ö O ! ~#fo! !> ö ! ~#fo`is#r`i~#fon}ʩ `i~#fon}*ʃ `i~#fon}? ! ~#fo! !> ö `i^#Vr+s] ! ~#foG !9 BAD COUNT %s Output drive =%s ERROR - Ignoring %s Can't accept ambiguous name %sA Iïø&Áoò)fó!9DM`i!- ~#fo #|z !- ~#fo!z! q!' w#w!"1 `i# vʸ !- ~#fo!! j`i# ! s#r"5! s#r! ~#fo`i& s! ^#Vr+sn} ! 6!1 ~#foҹ*)}ù! ~#fo͐)~#fon}dâ! ~#fo͐)~#fo#n}c! )! ~#fo͐)~#fo#ͪ#|¯! ~#fo͐)~#fo#!!ͭͰ>2)!! ~#fo͐)~#foͳ|*)&|g}o}2)!)4! ~#fo͐)~#fo#")! ~#fo͐)~#fo#n}O! ~#fo͐)!s#r! ~#fo͐)")d*)&|g}o}2)! ~#fo͐)~#fo#n}!!ͭͰ! ~#fo͐)~#fo#Ͷ!-! ~#fo͐)~#fo#͹#|! ~#fo͐)~#fo#! !ͭͰ!)4*)}y͐! s#r͐͐ ~#foZ! ~#fo͐)! ~#fo͐#)~#fos#r! ^#Vr+s ͐ ^#Vr+s`i^#Vr+s*)++")ß͐ ͐s#r! ~#fo͐ ~#fo)w#wí! ^#Vr+s`i^#Vr+s!9Can't open %s ! ~#fo`i^#Vr+sn};!j! ~#fo͐n! ~#fo͐nѯgWj!9 #{"õ#À!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{!`in}%½!! ! s#r! 6#6! s! s! s͐n}-! ^#Vr+s! 4͐n}0"! 4͐n&y}?! |B!! s#r! ^#Vr+sn`is{.Š! |! s#r! 4! ^#Vr+sn`is`in&}DʶUXO CJ S{ ç!͐~#fo|! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 ! 6 ! 6! ~#fo! n&! ^#Vr+s~#fo! vѯgs#r ! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+s ! n}Ž ! 6#6! ^#Vr+s~#fo! s#r͐n} ͐| ! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+sé ͐6! !&:q):)%=)%=r:qo&7:)~:,"s!"u*|ʇ%**sŒ%! ~‡%6*u*+"*"*u#"uS%ð%.$$7*ͪ%\!*ͭ%7:)~:,"s!"u*|*u>&*~#&"*s*u>&#"u*+"&7*|DM**͋&o&><&~+ x&|}×&'7:,*͔&:*ʹ&}|2q &&:qw&! {w#7*!9& 6C#6O#6M.'*|D'!\&V'!\&*|V'!!l&!~#foʎ'> +ͅ'#~s'##g'a{ !p'!*w#›':**ʲ'*!ѷ! , FNxg>Goy($Gultio equ 1 ;Set to 0 for WS14 if multio ;Define Mult I/O environment clkgrp equ 0 ;Clock port group (0=group 0) congrp equ 1 ;Console port group (1=p1,2=p2,3=p3) modgrp equ 2 ;Modem port group (1=p1,2=p2,3=p3) mbaud equ 384 ;baud rate divisor , default for 300 baud mbase equ 48h ;Base address of Multi I/O or Decision I rbr equ mbase ;Read data buffer thr equ mbase ;Transmitter data buffer dll equ mbase ;Baud rate divisor latch (lsb) dlm equ mbase+1 ;Baud rate divisor latch (msb) ier equ mbase+1 ;Interrupt enable register iir equ mbase+2 ;Interrupt identification register lcr equ mbase+3 ;Line control register mcr equ mbase+4 ;Modem control register lsr equ mbase+5 ;Line status register msr equ mbase+6 ;Modem status register selgrp equ mbase+7 ;Select group port wlsb0 equ 00000001B ;lcr WORD LENGTH SELECT BIT #0 wlsb1 equ 00000010B ;lcr WORD LENGTH SELECT BIT #1 ; bit1_ _bit0 ; || ; 00 - 5 bit word length ; 01 - 6 bit word lrg 180H ;; jump vector ; morrow: jmp initm ;Initialize modem port jmp modin ;Input a char from modem jmp modout ;Output a char to modem jmp chkrr ;Ck if a char received (receiver ready) jmp chktr ;Ck if transmitter is ready jmp chkcd ;Ck if a carrier is detected jmp chkpe ;Ck for parity error on received char jmp chkfe ;Ck for frame error on received char jmp chkoe ;Ck for overrun error on received char jmp chkri ;Ck for ring indicator(incoming call) jmp setbr ;Set new baud rate (75 to 9600) jmp setpar ;Set new parity type (none,odd,even) jmp set8db ;Set word length (7 or 8 bits) jmp set2sb ;Set number of stop bits ( 1 or 2 ) jmp setorg ;Set modem mode (answer or originate ) jmp setoh ;Set phone 'on/off hook' jmp settxe ;Set transmitter enable jmp setbrk ;Set communications line break jmp dial ;Dial the number jmp tenths ;Delay routine (0.1 sec) jmp w1ms ;Delay routine (1.0 msec) jmp exit ;;; initm - initialize modem ; initm: mvi  call wasmx ;write string to modem ret ;;; exit - exit routine after leaving MITE ; ; exit: ret ;;; modin - input character from modem ; ; exit: A character from modem modin: mvi a,modgrp ;Select modem port out selgrp in rbr ;Read char in receiver buffer register ret ;;; modout - output character to modem ; ; entry: A character for modem modout: push psw ;Temporarily save char to be xmitted mvi a,modgrp ;Select modem port out selgrp pop psw ;Get char to be xmitted back to accumulator out thr ;Xmit char in transmitter holding register ret ;;; chkrr - check for receiver ready ; ; exit: carry flag set if character available chkrr: mvi a,modgrp ;Select modem port out selgrp in lsr ;Get contents of line status register sta clsr ;Save current contents of lsr ani dr ;Check if data is available in receive buffer jz chkrr1 ;Branch if no data in receive buffer stc ;Data is available, so set carry flag ret chkrr1: ora a ;Daength ; 10 - 7 bit word length (default) ; 11 - 8 bit word length stb equ 00000100B ;lcr STOP BITS - bit #2 ; 0 - 1 stop bit (default) ; 1 - 2 stop bits on 6,7,8 bit word pen equ 00001000B ;lcr PARITY ENABLE bit - bit #3 eps equ 00010000B ;lcr EVEN PARITY SELECT bit - bit #4 brk equ 01000000B ;lcr SET BREAK bit - bit #6 dlab equ 10000000B ;lcr DIVISOR LATCH ACCESS BIT - bit #7 dtr equ 00000001B ;mcr DATA TERMINAL READY bit - bit #0 rts equ 00000010B ;mcr REQUEST TO SEND bit - bit #1 dr equ 00000001B ;lsr DATA READY bit - bit #0 oe equ 00000010B ;lsr OVERRUN ERROR bit - bit #1 pe equ 00000100B ;lsr PARITY ERROR bit - bit #2 fe equ 00001000B ;lsr FRAME ERROR bit - bit #3 thre equ 00100000B ;lsr TRANSMITTER HOLDING REGISTER EMPTY bit-#5 cts equ 00010000B ;msr CLEAR TO SEND bit - bit #4 dsr equ 00100000B ;msr DATA SET READY bit - bit #5 ri equ 01000000B ;msr RING INDICATOR bit - bit #6 rlsd equ 10000000B ;msr RECVD LINE SIGNAL DETECT bit - bit #7 endif oa,modgrp ;Select modem port out selgrp mvi a,eps+pen+wlsb1 ;Get default parity,wordlength,stopbits ori dlab ;Enable divisor access latch bit out lcr ;Set them lxi h,mbaud ;Get modem default baud rate mov a,h out dlm ;Set upper baud rate divisor latch mov a,l out dll ;Set lower baud rate divisor latch in lcr ;Clear divisor access latch ani 7fh out lcr sta clcr ;Save current contents of lcr xra a ;Clear accumulator & flags out ier ;Clear interrupt enable register out lsr ;Clear line status register mvi a,dtr ;Raise dtr out mcr ; in modem control register sta cmcr ;Save current contents of mcr in msr ;Clear modem status register in lsr ;Clear line status register in rbr ;Clear receiver buffers in rbr ; ...do it again to make sure call initsm ;initialize smart modem ret ;;; initsm - initialize smart modem ; ; initsm: lxi d,sminit ;point to init string ldax d ;get character cpi ' ' rz ;exit if first char blank ta not available, so clear carry flag ret ;;; chktr - check for tranmitter ready ; ; exit: carry flag set if transmitter ready chktr: mvi a,modgrp ;Select modem port out selgrp in lsr ;Get contents of line status register ani thre ;Ck if xmtr holding register is empty jz chktr1 ;Branch if xmtr holding register not empty in msr ;Get contents of modem status register ani dsr+cts ;Check if modem is ready jz chktr1 ;Branch if modem not ready stc ;Xmtr holding register is empty ret ; and modem is ready, so set carry chktr1: ora A ;Xmtr holding register not empty, or ret ; modem not ready, so clear carry flag ;; chkcd - check for carrier detect ; ; exit: carry flag set if carrier present chkcd: mvi a,modgrp ;Select modem port out selgrp in msr ;Get contents of modem status register ani rlsd ;Check if a carrier is detected jz chkcd1 ;Branch if carrier not detected stc ;Carrier detected, set carry flag ret chkcd1: ora A ;Carrihkoe1: ora A ;No overrun error, clear carry flag ret ;;; chkri - check for ring indicate ; ; exit: carry flag set if incoming call chkri: mvi a,modgrp ;Select modem port out selgrp in msr ;Get status byte from modem status register ani ri ;Check for ring indicator ; jz chkri1 ;Branch if no ring indicator--(REMOVE ';' IF ; RI IS IMPLEMENTED - PRESENTLY ; HARDWIRED TO '1' IN MORROW MULTI I/O) stc ;Ring indicator occurred, set carry flag ret chkri1: ora A ;No ring indicator, clear carry flag ret ;;; setbr - set baud rate ; ; entry: HL baud rate ; ; exit: carry flag set if error setbr: push h lxi d,75 ;error exit if baud rate < 75 call cmpde rc lxi d,9601 ;error exit if baud rate > 9600 call cmpde cmc rc call div2 ;divide by 2 xchg ;move it into DE lxi h,57600 ;HL = constant to divide into lxi b,0 ;BC = 0 setbr1: mov a,l ;HL = HL - DE sub e mov l,a mov a,h sbb d mov h,a jc setbr2 ;jump if negative inx jmp cr3on setp2: mvi b,eps ;Set even partiy bit in lcr (even parity) call cr3on mvi b,pen ;Set partiy enable bit in lcr jmp cr3on ;;; set8db - set number of data bits ; ; entry: A data bits select code: ; 0 = 7 data bits ; 1 = 8 data bits set8db: ora a ;jump if A .ne. 0 jnz set8d1 mvi b,wlsb0 ;Clear word length select bit 0 (7 bit word) jmp cr3off set8d1: mvi b,wlsb0 ;Set wlsb0 in lcr (8 bit word) jmp cr3on ;;; set2sb - set number of stop bits ; ; entry: A stop bits select code: ; 0 = 1 stop bit ; 1 = 2 stop bits set2sb: ora a ;jump if A .ne. 0 jnz set2s1 mvi b,stb ;Clear stop bits in lcr (1 stop bit) jmp cr3off set2s1: mvi b,stb ;Set stop bits in lcr (2 stop bits) jmp cr3on ;;; setorg - set modem mode (answer or originate) ; ; entry: A mode select code: ; 0 = answer ; 1 = originate setorg: mov b,a lda adtyp cpi 1 ;check for pulse dial mov a,b rnz ora a ;check for originate jnz setor1 ;jump if so er not detected, clear carry flag ret ;;; chkpe - check for parity error ; ; exit: carry flag set if parity error chkpe: lda clsr ;Get current contents of line status register ani pe ;Check if parity error has occurred jz chkpe1 ;Branch if no parity error stc ;Parity error occurred, set carry flag ret chkpe1: ora A ;No parity error, clear carry flag ret ;;; chkfe - check for frame error ; ; exit: carry flag set if frame error chkfe: lda clsr ;Get current contents of line status register ani fe ;Check if frame error has occurred jz chkfe1 ;Branch if no frame error stc ;Frame error occurred, set carry flag ret chkfe1: ora A ;No frame error, clear carry flag ret ;;; chkoe - check for overrun error ; ; exit: carry flag set if overrun error chkoe: lda clsr ;Get current contents of line status register ani oe ;Check for overrun error jz chkoe1 ;Branch if no overrun error stc ;Overrun error occurred, set carry flag ret c b ;BC = BC + 1 jmp setbr1 ;loop setbr2: mvi a,modgrp ;Select modem port out selgrp lda clcr ;Get current contents of line control register ori dlab ;Enable baud rate generator out lcr push psw mov a,b out dlm ;Set to new baud rate - hi byte mov a,c out dll ; - lo byte pop psw ani 7FH ;Disable baud rate generator out lcr ora a ;Clear carry flag pop h ret cmpde: mov a,h ;Compare DE to HL cmp d ; rnz ;Exit: carry flag set if DE < HL mov a,l ; zero flag set if DE = HL cmp e ret div2: ora a mov a,h rar mov h,a mov a,l rar mov l,a ret ;;; setpar - set parity ; ; entry: A parity select code: ; 0 = NONE ; 1 = ODD ; 2 = EVEN setpar: ora a ;jump if A .ne. 0 jnz setp1 mvi b,pen ;Clear parity enable bit in lcr jmp cr3off setp1: dcr a ;jump if A .ne. 1 jnz setp2 mvi b,eps ;Clear even parity bit in lcr(set odd parity) call cr3off mvi b,pen ;Set parity enable bit in lcr  mvi b,rts ;set ready (rts) call cr4on mvi b,dtr ;clear adp (dtr) call cr4off ret setor1: mvi b,dtr+rts ;clear ready and adp call cr4off ret ;;; setoh - set phone "off hook" ; ; entry: A hook select code: ; 0 = on hook (hung up) ; 1 = off hook setoh: ora a jnz setoh1 mvi b,dtr+rts jmp cr4off setoh1: mvi b,dtr jmp cr4on ;;; settxe - set transmitter enable ; ; entry: A transmitter enable code: ; 0 = disabled ; 1 = enabled settxe: ret ;;; setbrk - set communications line break ; ; entry: A break enable code: ; 0 = normal ; 1 = break setbrk: ora a ;jump if A .ne. 0 (break) jnz setbk1 mvi b,brk jmp cr3off setbk1: mvi b,brk jmp cr3on ;;; cr3on - turn on bit(s) on modem control register three ; ; entry: B ones in bit position(s) to turn on cr3on: push psw mvi a,modgrp ;Select modem port out selgrp lda clcr ;Get current contents of line control register ora b ;Turn on requested bits ou ; entry: B ones in bit position(s) to turn off cr4off: push psw mov a,b ;Complement the bits that need to be cma ; turned off mov b,a mvi a,modgrp ;Select modem port out selgrp lda cmcr ;Get current contents of modem ctrl register ana b ;Turn off requested bits out mcr ;Update contents of modem control register sta cmcr ;Save updated contents pop psw ret ;;; dial - dial phone number ; ; entry: HL points to phone number, term by 0 byte dial: lda adtyp ;determine the modem dial type cpi 0 ;check for hayes jz dialt cpi 1 ;check for pulse dial jz dialp ret ;exit if neither (manual dial) ;;; dialt - dial phone number (hayes method) ; ; entry: HL points to phone number, term by 0 byte dialt: push h lxi d,predil ;point to header string call wasmx ;write to 'modem' pop h dialt1: mov a,m ;fetch next digit ora a ;jump if end of string jz dialt3 cpi '^' ;check for control jnz dialt2 inx h mov a,m ;get character ora  sec) call tenths jmp dialp ;; racmx - read until no more ; racmx: push b ;save bc racmx0: lxi b,500 ;.25 seconds w/o character racmx1: call chkrr jc racmx2 ;jump if character call w1ms ;wait a millisecond dcx b mov a,b ora c jnz racmx1 ;loop if not done pop b ret ;exit if done racmx2: call modin ;get character jmp racmx0 ;try again ;; wasmx - write ASCII string to modem with check ; wasmx: ldax d inx d ;update pointer ora a ;check for end rz cpi '^' ;check for control code jnz wasmx1 ldax d inx d ani 1FH ;convert to control wasmx1: call wacm ;write character push psw mvi b,2 call tenths pop psw cpi cr ;check for return jnz wasmx ;continue call racmx ;wait for no response jmp wasmx ;;; wait50 - wait 50 milliseconds ; wait50: push b mvi b,50 wt50: call w1ms ;wait 1 ms dcr b jnz wt50 ;do 50 times pop b ret ;; wasm - write ASCII string to modem ; wasm: ldax d cpi '$' rz call wact lcr ;Update contents of line control register sta clcr ;Save updated lcr contents pop psw ret ;;; cr3off - turn off bit(s) on modem control register three ; ; entry: B ones in bit position(s) to turn off cr3off: push psw mov a,b ;Complement the bits that need to cma ; be turned off mov b,a mvi a,modgrp ;Select modem port out selgrp lda clcr ;Get current contents of line control register ana b ;Turn off requested bits out lcr ;Update contents of line control register sta clcr ;Save updated contents pop psw ret ;;; cr4on - turn on bit(s) on modem control register four ; ; entry: B ones in bit position(s) to turn on cr4on: push psw mvi a,modgrp ;Select modem port out selgrp lda cmcr ;Get currents contents of modem ctrl register ora b ;Turn on requested bits out mcr ;Update contents of modem control register sta cmcr ;Save updated contents pop psw ret ;;; cr4off - turn off bit(s) on modem control register four ;a jz dialt3 ani 1FH ;make control char dialt2: call wacm ;write to modem inx h push psw mvi b,2 call tenths pop psw cpi cr ;check for return cz racmx ;if so, wait for response jmp dialt1 dialt3: mvi a,cr ;issue CR call wacm ret ;;; dialp - dial phone number pusle method ; ; entry: HL points to phone number, term by 0 byte dialp: mov a,m ;fetch next digit of number ora a ;exit if zero rz inx h ;increment pointer cpi '*' ;jump if not asterisk jnz dialp2 mvi b,10 ;wait 1 second call tenths jmp dialp ;continue dialp2: sui '0' ;convert ASCII to binary jc dialp ;ignore if < '0' cpi 10 ;ignore if > '9' jnc dialp ora a ;jump if not zero jnz dialp3 mvi a,10 ;use 10 clicks for zero dialp3: mov b,a ;b = number of clicks dialp4: push b mvi a,0 call setoh call wait50 ;wait 50 msec mvi a,1 call setoh call wait50 ;wait 50 msec pop b dcr b ;decrement click count jnz dialp4 ;loop until zero mvi b,7 ;interdigit wait (.7m inx d jmp wasm ;; wacm - write ASCII character to modem ; wacm: push psw wacm1: call chktr jnc wacm1 pop psw jmp modout ;; racm - read ASCII character from modem ; racm: call chkrr jnc racm jmp modin ;; tenths - wait B tenths of a second ; ; entry: B number of tenths of a second to wait tenths: call tenth dcr b jnz tenths ret ;; tenth - wait 1 tenth of a second ; tenth: push b mvi b,99 tenth1: call w1ms ;This loop causes a delay of 99777.5 usec dcr b ; which is not quite 0.1 sec, so next jnz tenth1 ; loop completes the delay mvi b,55 ;This loop causes a delay of 222.5 usec usec: dcr b ; bringing the total delay to 0.1 sec jnz usec pop b ret ;; w1ms - wait one millisecond ; w1ms: push psw push h lxi h,164 ;This constant allows this routine ; to cause a delay of 0.9995 ms w1ms1: dcx h ; on a Decision 1 4MHZ Z80 mov a,h ; All instruction clock cycles ora l ; are taken into account$NNONAME :10018000C3C201C30202C30902C31202C32402C3D1 :110190003A02C34902C35502C36102C36D02C3790264 :1001A100C3C802C3E902C3F702C30503C32203C3E1 :1101B1003003C33103C38503C36E04C38804C301027E :1001C2003E02D34F3E1AF680D34B2180017CD349A5 :1001D2007DD348DB4BE67FD34B329604AFD349D372 :1001E2004D3E01D34C329704DB4EDB4DDB48DB48FE :1001F200CDF601C9111C011AFE20C8CD2104C9C9BE :100202003E02D34FDB48C9F53E02D34FF1D348C972 :100212003E02D34FDB4D329804E601CA220237C9AF :10022200B7C93E02D34FDB4DE620CA3802DB4EE6A9 :1002320030CA380237C9B7C93E02D34FDB4EE68017 :10024200CA470237C9B7C93A9804E604CA53023703 :10025200C9B7C93A9804E608CA5F0237C9B7C93AAA :100262009804E602CA6B0237C9B7C93E02D34FDB14 :100272004EE64037C9B7C9E5114B00CDBA02D811D5 :110282008125CDBA023FD8CDC002EB2100E1010000A8 :100293007D936F7C9A67DAA00203C393023E02D375 :1002A3004F3A9604F680D34BF578D34979D348F186 :1002B300E67FD34BB7E1C97CBAC07DBBC9B77C1F0E :1002C300677D1F6FC9B7C2D1020608C34F033DC282 :1102D300DF020610CD4F030608C33F030610CD3F03CC :1002E4000608C33F04B4 :11045A00F5CD2402D25B04F1C30902CD1202D265049D :11046B00C30202CD760405C26E04C9C50663CD8804E9 :11047C0005C27904063705C28204C1C9F5E521A40078 :0D048D002B7CB5C28D04E1F1C90000000018 $C0000 $D0000 :0000000000 EB :10034700B0D34B329604F1C9F5782F473E02D34F0D :100357003A9604A0D34B329604F1C9F53E02D34F27 :100367003A9704B0D34C329704F1C9F5782F473E3A :1103770002D34F3A9704A0D34C329704F1C93A4601B5 :10038800FE00CA9303FE01CAC603C9E5116701CD81 :100398002104E17EB7CAC003FE5EC2AD03237EB767 :1003A800CAC003E61FCD5A0423F50602CD6E04F138 :1003B800FE0DCC0604C39B033E0DCD5A04C97EB77F :1003C800C823FE2AC2D703060ACD6E04C3C603D6C5 :1003D80030DAC603FE0AD2C603B7C2E7033E0A47AD :1103E800C53E00CD2203CD43043E01CD2203CD4304B6 :1103F900C105C2E8030607CD6E04C3C603C501F401ED :10040A00CD1202DA1B04CD88040B78B1C20A04C1EA :10041A00C9CD0202C307041A13B7C8FE5EC22E046E :10042A001A13E61FCD5A04F50602CD6E04F1FE0D2D :10043A00C22104CD0604C32104C50632CD880405B1 :10044A00C24604C1C91AFE24C8CD5A0413C34, not jnz w1ms1 ; just the loop. pop h pop psw ret ;*********************************************************** ;* * ;* Program data storage areas * ;* * ;*********************************************************** clcr: db 0 ;current contents of line control register cmcr: db 0 ;current contents of modem control register clsr: db 0 ;current contents of line status register cmsr: db 0 ;current contents of modem status register tocnt: ds 2 ;time-out count for RACM timer: ds 2 ;msec timer for RACM end morrow F03B7C2F2020601C34F03060167 :1102F400C33F03B7C200030604C34F030604C33F034A :11030500473A4601FE0178C0B7C21C030602CD620316 :100316000601CD7203C90603CD7203C9B7C22B030A :100326000603C372030601C36203C9B7C23A0306D2 :1103360040C34F030640C33F03F53E02D34F3A9604EB :10034700B0D34B329604F1C9F5782F473E02D34F0D :100357003A9604A0D34B329604F1C9F53E02D34F27 :100367003A9704B0D34C329704F1C9F5782F473E3A :1103770002D34F3A9704A0D34C329704F1C93A4601B5 :10038800FE00CA9303FE01CAC603C9E5116701CD81 :100398002104E17EB7CAC003FE5EC2AD03237EB767 :1003A800CAC003E61FCD5A0423F50602CD6E04F138 :1003B800FE0DCC0604C39B033E0DCD5A04C97EB77F :1003C800C823FE2AC2D703060ACD6E04C3C603D6C5 :1003D80030DAC603FE0AD2C603B7C2E7033E0A47AD :1103E800C53E00CD2203CD43043E01CD2203CD4304B6 :1103F900C105C2E8030607CD6E04C3C603C501F401ED :10040A00CD1202DA1B04CD88040B78B1C20A04C1EA :10041A00C9CD0202C307041A13B7C8FE5EC22E046E :10042A001A13E61FCD5A04F50602CD6E04F1FE0D2D :10043A00C22104CD0604C32104C50632CD880405B1 :10044A00C24604C1C91AFE24C8CD5A0413C34 !"#$%&'