home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PROGRAMS / UTILS / COMMUNIC / K9X88D_3.ZIP / DOCS.ZIP / LYNX.TXT < prev    next >
Encoding:
Text File  |  1989-07-02  |  29.9 KB  |  793 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.                                         __________
  27.                                        /\_\_\_\_\_\
  28.                                       /\/         /\
  29.                                      /\/ L Y N X /\/
  30.                                      \/_ _ _ _ _/\/
  31.                                       \_\_\_\_\_\/
  32.  
  33.                          A full streaming/RLE compression/CRC-32
  34.                                  batch transfer protocol
  35.  
  36.  
  37.                     Copyright (C)1989 by Matthew Thomas & John Schuit
  38.                                    All Rights Reserved
  39.  
  40.                                Version 2.12 - July 1, 1989
  41.  
  42.  
  43.  
  44.                              Documentation by Matthew Thomas
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  70.  
  71.  
  72.  
  73.               W h a t   i s   L y n x ?
  74.               _____________________________________________________________
  75.  
  76.               Lynx, in my original definition, is a data transfer protocol
  77.               which utilizes proven techniques of data compression, error
  78.               recovery, and full-duplex communication to produce highly
  79.               efficient and successful file transfers, regardless of the
  80.               connection quality.
  81.  
  82.               Lynx also happens to be the name of the MS-DOS(TM) engine
  83.               which I have provided in this package as a full
  84.               implementation of the protocol.
  85.  
  86.  
  87.  
  88.               W h y   i s   L y n x   P u b l i c   D o m a i n ?
  89.               _____________________________________________________________
  90.  
  91.               In my theory--which no one finds particularly interesting,
  92.               but I shall elucidate, regardless--there are two marketing
  93.               schemes to make software available to a typical computer
  94.               user:
  95.  
  96.                 1) Free software
  97.                 2) Expensive software
  98.  
  99.               The similarity between the two is in the fact that there are
  100.               benefits to each approach, generally befitting either the
  101.               user, in the case of the first approach, or the vendor
  102.               (or filcher) in the second approach.
  103.  
  104.               The difference between the two is not only in the spelling,
  105.               but in the fact that expensive software isn't always the
  106.               best, and doesn't typically make a programmer very popular,
  107.               because his or her byline is generally lost in the inkblot of
  108.               corporate copyright and legal mumbo-jumbo that is likely to
  109.               present itself upon initial view of the documentation.
  110.  
  111.                                        *    *    *
  112.  
  113.               What this all boils down to is the fact that I beleive in
  114.               both types of software marketing schemes, but I have chosen
  115.               the first for Lynx because I would like everyone to benefit
  116.               from the protocol, regardless of their budget.
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.                                           Page 1
  131.  
  132.  
  133.  
  134.  
  135.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  136.  
  137.  
  138.  
  139.               L e g a l i t i e s   a n d   L o n g   W i n d
  140.               _____________________________________________________________
  141.  
  142.               The copyright notice on Lynx is present because I am proud of
  143.               my work.  I own all rights to the source code of the
  144.               MS-DOS(TM) engine for Lynx, and presently no plans have been
  145.               made to make it public domain.  However, you--and anyone else
  146.               reading this--may feel free to distribute the provided
  147.               archive in unmodified form to whomever you wish, free of
  148.               charge, no royalties or remunerations.  What you can't do, is
  149.               remove my name and my copyright notice from any portion of
  150.               the archive or its contents for any reason.  If you are
  151.               actually reading this, you are an outstanding citizen, and
  152.               likely realize that copyrights exist for a valid reason, not
  153.               just to provide confusing legalese; or perhaps you are
  154.               dropping off to sleep, in fervent hope that a dream will be
  155.               more interesting than enduring these boring legalities.....
  156.               W A K E   U P !  It's getting interesting.
  157.  
  158.  
  159.  
  160.               H o w   D o e s   L y n x   W o r k ?
  161.               _____________________________________________________________
  162.  
  163.               Lynx is based on the assumption that a connection between two
  164.               sites is capable of full-duplex transmission.  Lynx will send
  165.               a stream of data while simultaneously checking the receive
  166.               buffer for any interruptions from the other end.  On half
  167.               duplex links, this will not work.  But since almost all
  168.               modems in use today are capable of full-duplex operation,
  169.               this specification is not a problem.
  170.  
  171.               The reason that Lynx makes use of full-duplex operations is
  172.               to insure optimum transfer speed. When transmitting
  173.               information, Lynx spends very little time waiting for the
  174.               other end to respond.  On certain occasions--after a file
  175.               header is transmitted or after recovering from a line error--
  176.               Lynx will wait for the other end to resynchronize. This
  177.               handshaking is in the best interest all parties because when
  178.               errors occur, loss of synchronization is quite possible if
  179.               the proper secret club handshake is not used.
  180.  
  181.               Lynx can transfer up to 255 files in a single batch.
  182.               Information which is passed from sender to receiver
  183.               concerning each file includes:
  184.  
  185.                 Filename (8 character body, 3 character extension)
  186.                 Original time/date stamp (optional)
  187.                 File length (exact length of files is preserved by Lynx)
  188.                 Lynx version number (practically useless)
  189.  
  190.               The Lynx engine supports COM1 thru COM4, with adjustable
  191.               configuration for COM3 and COM4.  Baud rates are selectable
  192.               up to 115200 baud.
  193.  
  194.  
  195.  
  196.                                           Page 2
  197.  
  198.  
  199.  
  200.  
  201.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  202.  
  203.  
  204.  
  205.               Lynx transfers are protected with CRC-32 error checking, and
  206.               are recoverable either automatically by the protocol (Lynx
  207.               will attempt to recover from up to twenty contiguous errors)
  208.               or manually, by reconnecting--hopefully with a cleaner
  209.               connection--and using the resume option of Lynx.  The resume
  210.               option alerts the Lynx receiver protocol to automatically
  211.               test for the presence of a partially downloaded file before
  212.               beginning the transfer, and to initiate the download at the
  213.               point in the file where the last one ended, instead of
  214.               retransferring the entire file.
  215.  
  216.               During the course of the transfer, Lynx will dynamically
  217.               adjust the block size from 2 packets up to 16 packets to
  218.               optimize for speed on clean connections.  Incidentally, a
  219.               packet contains 64 bytes of data.
  220.  
  221.               The benefit of increasing the block size on error-free
  222.               connections is in the fact that the everhead of block
  223.               numbers, control sequences, and CRC-32 bytes is decreased for
  224.               the entire file, actually decreasing the total number of
  225.               bytes that must be transferred.
  226.  
  227.               Lynx will also dynamically shrink block sizes if continuous
  228.               errors are detected in the connection.  The benefit of this
  229.               technique is that on an error-prone connection, short blocks
  230.               take less time to retransmit (which is a natural occurance
  231.               during error recovery)
  232.  
  233.               Lynx tests each block for compressability before transmitting
  234.               it.  An RLE (Run-Length-Encoding) compression technique is
  235.               used for this operation.  Generally, a block containing text
  236.               type information will be compressable.  Archived or other
  237.               compressed files will likely not be further condensed by this
  238.               technique.  Note that Lynx will always optimize transmission
  239.               of each block--if RLE decreases the block length, it will be
  240.               used; otherwise the uncompressed packet will be sent.  In
  241.               some implementations of RLE encoding, the compression
  242.               technique may actually increase the length of the data being
  243.               encoded.  This is not the case with Lynx.
  244.  
  245.               Lynx fully supports buffered and high-speed MNP modems with
  246.               CTS/RTS hardware handshaking.  Throughput on these modems is
  247.               extremely high using the Lynx protocol.
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.                                           Page 3
  263.  
  264.  
  265.  
  266.  
  267.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  268.  
  269.  
  270.  
  271.               H o w   D o   I   U s e   L y n x ?
  272.               _____________________________________________________________
  273.  
  274.               The MS-DOS(TM) engine for Lynx is a program which can be
  275.               called either directly from the DOS command line, or via
  276.               batch files, such as from a communication program or BBS
  277.               program.
  278.  
  279.               A help screen outlining the command line options for Lynx is
  280.               shown by running the lynx.exe program without any command
  281.               line parameters.  The help screen looks something like this:
  282.  
  283.               +-----------------------------------------------------------+
  284.               |Parameters: none.                                          |
  285.               |                                                           |
  286.               |Usage:  LYNX S [options] [@file] [[file] [file] [...]]     |
  287.               |        LYNX R [options] [path]                            |
  288.               |                                                           |
  289.               |  [options] : /baud - set the baudrate to 'baud'           |
  290.               |              /com  - use COM port 'com' (1 - 4)           |
  291.               |              /NC   - no carrier checking                  |
  292.               |              /R    - enable resume option (receiver only) |
  293.               |              /B    - ring bell upon completion            |
  294.               |              /W    - wait for a keystroke upon completion |
  295.               |              /D    - stamp files with current time/date   |
  296.               |              /T    - drop DTR and RTS upon completion     |
  297.               |              /S    - use color window screen display      |
  298.               |              /H    - use CTS/RTS handshaking              |
  299.               |                                                           |
  300.               |    [@file] : file containing list of files to send        |
  301.               |    [file]  : file to transmit (sender only)               |
  302.               |    [path]  : drive and path location for received files   |
  303.               |                                                           |
  304.               |Default: Current baud - COM1 - carrier checking enabled    |
  305.               +-----------------------------------------------------------+
  306.  
  307.               The following is a complete explanation of all parameters,
  308.               and how each is used:
  309.  
  310.                S or R : These two parameters specify whether Lynx should
  311.                         send or receive files.  Note that one of the two
  312.                         must be used, and must appear as the first
  313.                         parameter on the command line.  All other
  314.                         parameters may appear in any order.
  315.  
  316.                 /baud : With this parameter, you may specify a baud rate to
  317.                         use for the Lynx transfer.  Legal values are:
  318.  
  319.                         /300,/1200,/2400,/4800,/9600,/19200,/38400,
  320.                         /57600, and /115200
  321.  
  322.                         If this parameter is not used, Lynx will autosense
  323.                         the current baud rate of the port in use.
  324.  
  325.  
  326.  
  327.  
  328.                                           Page 4
  329.  
  330.  
  331.  
  332.  
  333.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  334.  
  335.  
  336.  
  337.                  /com : This parameter allows you to specify which COM port
  338.                         to use.  Values from 1 to 4 are legal.  For
  339.                         example, to use COM2, use the parameter /2.  The
  340.                         default COM port may also be specified with a DOS
  341.                         environment variable, which is explained in the
  342.                         next section.
  343.  
  344.                   /NC : This parameter specifies that Lynx should ignore
  345.                         the DCD (carrier signal) from the serial port.
  346.                         Without this parameter, Lynx will abort the
  347.                         transfer if the carrier signal is lost.
  348.  
  349.                    /R : This parameter enables the Lynx resume option.
  350.                         When this parameter is used, Lynx will
  351.                         automatically check the receive path for the
  352.                         presence of each file for which a file header is
  353.                         received.  If the file already exists (in partial
  354.                         form) Lynx will alert the sender to begin the
  355.                         transfer at the end of the partial file.
  356.                         This sounds rather more complicated than it really
  357.                         is.  The fact is, the /R (resume) option makes it
  358.                         possible to partially download a file, abort the
  359.                         transfer (perhaps in the case of a bad connection),
  360.                         and continue the download later, at the same point
  361.                         where it left off.
  362.                         This parameter is only effective in Lynx receive
  363.                         mode.
  364.  
  365.                    /B : This option causes Lynx to sound a bell upon
  366.                         completion.  The bell will sound regardless of
  367.                         whether the transfer was successful or not.
  368.  
  369.                    /W : This parameter tells Lynx to wait for a keystroke
  370.                         before exiting at the end of a transfer (whether
  371.                         successful or otherwise).  This is useful if Lynx
  372.                         is executed from a DesqView(TM) window or some
  373.                         similar environment, and the user wishes to see how
  374.                         Lynx finished before the window closes.
  375.  
  376.                    /D : When this parameter is used, all received files
  377.                         will be stamped with the current time and date when
  378.                         they are closed (when transfer is complete).
  379.                         Normally--if /D is not used--Lynx will stamp each
  380.                         file with the actual time and date of the original
  381.                         file, which is passed via the header packet at the
  382.                         start of each file in a batch.
  383.  
  384.                    /T : When this parameter is specified, Lynx will drop
  385.                         the DTR and RTS signals to the modem when the
  386.                         transfer is completed.  Normally, these two signals
  387.                         are left in their original state upon completion.
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.                                           Page 5
  395.  
  396.  
  397.  
  398.  
  399.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  400.  
  401.  
  402.  
  403.                    /H : This option causes Lynx to use CTS/RTS handshaking
  404.                         during the transfer.  This is desirable when using
  405.                         high-speed buffered modems or MNP error correcting
  406.                         modems, because of the full-streaming nature of the
  407.                         Lynx protocol.  Using this option with these modems
  408.                         allows data to be transmitted as fast as the modem
  409.                         will accept it, without causing data errors.
  410.  
  411.                    /S : When this option is used, Lynx will use direct
  412.                         memory screen writes for all screen updates,
  413.                         instead of BIOS screen writes.  Generally, direct
  414.                         screen access is faster than BIOS access.  This
  415.                         switch also enables a pop up window view instead of
  416.                         the normal "teletype" display that Lynx otherwise
  417.                         uses for feedback.  The colors of this pop-up
  418.                         window may be configured using the LynxCo
  419.                         environment variable, explained in the next
  420.                         section.
  421.  
  422.                 @file : This parameter can be used by the sender to specify
  423.                         a list file that contains a list of path/filenames
  424.                         of files to be sent in a batch.  In the list file,
  425.                         each filename must be separated by a carriage
  426.                         return/linefeed combination.  Blank lines are
  427.                         ignored.  For example, the command:
  428.  
  429.                         lynx s @listing.lst
  430.  
  431.                         tells Lynx to send all the files which are listed
  432.                         in the file 'listing.lst'.  DOS wildcards are
  433.                         supported inside the list of files only.  The
  434.                         filespec which follows the @ must be an absolute
  435.                         filename.
  436.  
  437.                  file : This parameter may consist of a full path and
  438.                         filename of a file to send.  DOS wildcards are
  439.                         fully supported.  A total of 255 individual files
  440.                         may be send in a single batch.  This parameter may
  441.                         be repeated on the command line to send multiple
  442.                         files.
  443.  
  444.                  path : This parameter may specify a DOS drive and path
  445.                         location where Lynx should place all files which
  446.                         are received.  If this parameter is not specified
  447.                         in the receiver's command line, all received files
  448.                         will be placed in the current DOS drive and
  449.                         directory.
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.                                           Page 6
  461.  
  462.  
  463.  
  464.  
  465.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  466.  
  467.  
  468.  
  469.               U s i n g   E n v i r o n m e n t   V a r i a b l e s
  470.               _____________________________________________________________
  471.  
  472.               There are some DOS environment variables which are recognized
  473.               by the Lynx engine program.  To set these variables, you may
  474.               use either the DOS 'SET' command, or build the variables into
  475.               the DOS environment table using a high-level language.
  476.               The first technique is probably the easiest and most widely
  477.               used.  You may wish to place the SET commands in your
  478.               autoexec.bat file so once they're set, you can forget about
  479.               them.
  480.  
  481.               The first two variables have been named the same as two of
  482.               the DSZ(TM) variables to maintain some compatibility between
  483.               the two engines.
  484.  
  485.                 DSZPORT - This variable, if defined, specifies the default
  486.                           COM port for Lynx to use.  It's value may be set
  487.                           to 1, 2, 3, or 4.
  488.                           Example:  DSZPORT=3
  489.  
  490.                  DSZLOG - If this variable contains a legal DOS filespec,
  491.                           Lynx will maintain a DSZ(TM) compatible log file
  492.                           at the specified path and filename.
  493.                           Example: DSZLOG=c:\bbs\lynxlog.txt
  494.  
  495.                           The format of the log file is one line for each
  496.                           file transferred, with the following information
  497.                           in each entry line:
  498.  
  499.                           - The First field is 'x' for Lynx send, or 'X'
  500.                             for Lynx receive.
  501.  
  502.                           - Next is the length of the file which was
  503.                             transferred.
  504.  
  505.                           - After that is the baud rate.
  506.  
  507.                           - Then the average transfer rate, shown in
  508.                             characters per second.
  509.  
  510.                           - Followed by the total number of errors which
  511.                             occured during transmission.
  512.  
  513.                           - The next field is always 0.  This was specified
  514.                             in the DSZ(TM) documentation as the number of
  515.                             flow control restrictions which occurred during
  516.                             transmission.  Lynx does not record this value.
  517.  
  518.                           - Next is the length of the last block which was
  519.                             transferred for the file in question.
  520.  
  521.                           - The last field in the log entry contains the
  522.                             filespec which was transferred.
  523.  
  524.  
  525.  
  526.                                           Page 7
  527.  
  528.  
  529.  
  530.  
  531.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  532.  
  533.  
  534.  
  535.                  LYNXP3 - This variable defines the port configuration of
  536.                           COM port 3.  This is only effective if Lynx is
  537.                           using COM3 during a transfer.
  538.  
  539.                           This variable specifies the base address (in hex)
  540.                           and the interrupt (irq) that the port will use.
  541.  
  542.                           For example: LYNXP3=2E8,3
  543.  
  544.                           tells Lynx to configure COM3 for base port
  545.                           address 2E8 and for interrupt 3 (irq3).
  546.                           The default configuration for COM3 is base
  547.                           address 3E8 and interrupt 4 (irq4).
  548.  
  549.                  LYNXP4 - This variable is exactly the same as LYNXP3,
  550.                           except it affects COM4.  The default
  551.                           configuration for COM4 is base address 2E8 and
  552.                           interrupt 3 (irq3).
  553.  
  554.                  LYNXCO - This variable defines the screen colors when the
  555.                           /S command line option is used.
  556.                           To use this variable, you must pass 6 values, 3
  557.                           digits each, separated by spaces or commas.
  558.                           The parameters set the following colors (in order
  559.                           of appearance):
  560.  
  561.                           - Status attribute
  562.                           - Status label attribute
  563.                           - Fatal error message attribute
  564.                           - Window frame attribute
  565.                           - Window header attribute
  566.                           - Window footer attribute
  567.  
  568.                           To calculate the color attributes, use the
  569.                           following formula:
  570.  
  571.                           attribute = (background * 16) + foreground
  572.  
  573.                           The following values can be used for color
  574.                           combinations:
  575.  
  576.                           Black   = 0      Dark Gray     = 8
  577.                           Blue    = 1      Light Blue    = 9
  578.                           Green   = 2      Light Green   = 10
  579.                           Cyan    = 3      Light Cyan    = 11
  580.                           Red     = 4      Light Red     = 12
  581.                           Magenta = 5      Light Magenta = 13
  582.                           Brown   = 6      Yellow        = 14
  583.                           Gray    = 7      White         = 15
  584.  
  585.                           The default configuration is equivalent to:
  586.  
  587.                           LYNXCO=014,015,012,014,011,010
  588.  
  589.  
  590.  
  591.  
  592.                                           Page 8
  593.  
  594.  
  595.  
  596.  
  597.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  598.  
  599.  
  600.  
  601.               E x i t   C o d e s
  602.               _____________________________________________________________
  603.  
  604.               When Lynx is finished, it will set the DOS errorlevel code to
  605.               alert a calling program to success or failure of the
  606.               transfer.  If Lynx is successful in the transfer, an
  607.               errorlevel of 0 will be returned.  If correct parameters are
  608.               given, but Lynx fails to successfully transfer the requested
  609.               files, an errorlevel of 1 will be returned.  If Lynx is
  610.               invoked without parameters (to show the help screen), an
  611.               errorlevel of 2 will be returned.
  612.  
  613.  
  614.  
  615.               Q u e s t i o n s ?
  616.               _____________________________________________________________
  617.  
  618.               If you have any questions or comments regarding Lynx, feel
  619.               free to leave mail to Matthew Thomas on PC Access BBS in
  620.               Racine, WI at (414) 634-5776.  I am a regular caller of this
  621.               BBS, and I will attempt to answer any mail received.
  622.  
  623.               If you feel like donating money to support future releases
  624.               and upgrades of Lynx and other related projects, feel free to
  625.               do so in whatever amount seems adequate.  Remember that you
  626.               are not required to donate anything to use Lynx.  Donations
  627.               are completely voluntary (and equally unlikely).
  628.  
  629.               Here's the mailing address:
  630.  
  631.                Matthew Thomas
  632.                144 Westminster Square
  633.                Racine, WI   53402
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.                                           Page 9
  659.  
  660.  
  661.  
  662.  
  663.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  664.  
  665.  
  666.  
  667.               K u d o s
  668.               _____________________________________________________________
  669.  
  670.               I would like to express my appreciation to the people who
  671.                             aided me during the Lynx project:
  672.  
  673.                                        Chuck Dennis
  674.                                     PC Access Systems
  675.                                     Racine, Wisconsin
  676.                                       (414) 634-5776
  677.  
  678.                 -Thanks for the use of your MNP modem for handshaking, as
  679.                  well as the time you spent testing Lynx and offering moral
  680.                  support!
  681.  
  682.  
  683.                                         Gary Huff
  684.                                      Capitol City BBS
  685.                                   Springfield, Illinois
  686.                                       (217) 529-6452
  687.  
  688.                   -Thanks for alerting me to previous incompatibilities
  689.                    with RBBS (which are now eliminated), and for spreading
  690.                    the word about Lynx!
  691.  
  692.  
  693.                                        John Schuit
  694.                                     Racine, Wisconsin
  695.  
  696.               -Thanks for contributing greatly to the project.
  697.                The Lynx color window display was designed and implemented
  698.                by John Schuit.
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.                                          Page 10
  725.  
  726.  
  727.  
  728.  
  729.               Lynx 2.12 - Copyright (C)1989 by Matthew Thomas & John Schuit
  730.  
  731.  
  732.  
  733.               V e r s i o n   U p d a t e s
  734.               _____________________________________________________________
  735.  
  736.               The following releases and upgrades have been made to Lynx
  737.               since its first release:
  738.  
  739.               2.12 (7/01/89) - Hopefully all MNP problems fixed for good!
  740.                              - Fixed COM routines to restore 8250
  741.                                interrupts to their exact original state.
  742.                                This affected older versions of ProComm, and
  743.                                RYBBS systems.
  744.  
  745.               2.11 (6/21/89) - Added window option in /S parameter
  746.                              - Added LYNXCO environment variable support.
  747.                              - Fixed bug in sender--sometimes would not
  748.                                respond to receiver cancellations.
  749.                              - Improved error recovery
  750.                              - Increased transmitter throughput for multi-
  751.                                tasking systems and slow (4.77MHz) PC's.
  752.  
  753.               2.10 (6/14/89) - Added CTS/RTS handshaking for MNP modems and
  754.                                high-speed buffered modems
  755.                              - Added 115200 baud option
  756.                              - Removed DIRRX environment variable, due to
  757.                                problems.
  758.                              - Fixed bug in sender mode: lockup on lost
  759.                                carrier.
  760.                              - Added /S parameter for fast screen writes
  761.  
  762.               2.00 (6/3/89)  - Added list file compatibility
  763.                              - Added /B, /W, /D, and /T switches
  764.                              - Optimized communication routines
  765.                              - Added configuration environment variables
  766.                                for COM3 and COM4
  767.                              - Added DIRRX environment variable
  768.                              - Added a faster baud rate (57600 baud)
  769.                              - Support for up to 255 files per batch
  770.                                instead of only 35.
  771.  
  772.               1.3 - First public release
  773.  
  774.  
  775.  
  776.               T r a d e m a r k s
  777.               _____________________________________________________________
  778.  
  779.               MS-DOS is a trademark of Microsoft Corporation.
  780.  
  781.               DSZ is a trademark of Omen Technologies, Inc.
  782.  
  783.               DesqView is a trademark of QuarterDeck Systems.
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.                                          Page 11
  791.  
  792.  
  793.