Quatech Syncdrive Release 4.00 for MPA-series adapters
Copyright (c) 1999 Quatech, Incorporated

January 29, 1999


What's New in Release 4.00?
---------------------------

   Release 4.00 is a major revision of the Syncdrive software.  The
changes made to the product since Release 3.30 are summarized here.
Detailed change descriptions can be found later in this document.

 *  New platform --- Windows 95/98 is now natively supported
  
 *  Improvement --- DMA buffer allocation under OS/2 greatly improved

 *  Printed manual update



Bug notice
----------

   There is a bug in the example programs that results in an incorrect display
of total bytes allocated for DMA buffers when the compiled DOS or Windows 3.1
examples are executed.  This can be corrected by applying a typecast to ULONG
to the multiplication in the last variable of the printf() function call.  
   This bug does not seem to affect operation of the example program.  It was
discovered too late to be updated on the distribution disks for this release.



Distribution diskette layout
----------------------------

Disk 1:

   \                    --- this file

   \dos                 --- DOS libraries
                              Large model for Borland and Microsoft C compilers
                              (Borland C++ 3.1, Microsoft C 6.0)

   \examples            --- C source code for example programs

   \include             --- include files needed for Syncdrive applications

   \os2                 --- OS/2 DLL, import library, device driver

   \win31               --- Windows 3.1 DLL, import library, device driver
   
   \win95               --- Windows 95/98 DLL, import libraries, device driver
                              (SYNCDRIV.LIB for Borland C++ 5.02,
                               SYNCMSVC.LIB for Microsoft Visual C 6.0)

Disk 2:

   \examples\dos        --- makefiles for DOS example programs
                              Borland C++ 3.1 and Microsoft C 6.0 compilers 
                              (command line MAKE/NMAKE)

   \examples\dos\exe    --- DOS executables of example programs
                              Compiled using Borland C++ 3.1 for DOS

   \examples\win31      --- project file for example programs
                              Borland C++ 4.5 for Windows (IDE)

   \examples\win31\exe  --- Windows 3.1 executables of example programs
                              "QuickWin" programs compiled using Borland C++ 4.5


Disk 3:

   \examples\os2        --- makefile for OS/2 example programs
                              IBM VAC++ 3.0 compiler (command line make)

   \examples\os2\exe    --- OS/2 executables of example programs
                              Text mode programs compiled using IBM VAC++ 3.0

   \examples\win95      --- project file for example programs
                              Borland C++ 5.02 for Windows (IDE)

   \examples\win95\exe  --- Windows 95/98 executables of example programs
                              Console programs compiled using Borland C++ 5.02



Installing Syncdrive
--------------------

   See the printed documentation for details on how to install Windows or OS/2
device drivers and for how to build Syncdrive applications.



Supported adapters
------------------

   Syncdrive Release 4.00 supports the following adapters:

   MPA-100        single channel, RS-232,     ISA
   MPA-200/300    single channel, RS-422/485, ISA
   MPA-102        dual channel,   RS-232,     ISA
   MPAP-100       single channel, RS-232,     PCMCIA
   MPAP-200       single channel, RS-422/485, PCMCIA


   Due to sagging market demand, the Micro Channel products are no
longer being supported by new releases of Syncdrive.  The last release
of Syncdrive for the MPA-2000/3000 Micro Channel adapter is Release 2.21.



Printed Documentation
---------------------

   The printed documentation has been updated for Release 4.00.  The
current revision of the Syncdrive User's Manual is January 1999, Quatech part
number 940-0057-750.  The part number and date can be found on the outside
back cover of Quatech manuals.
   Any future updates to the manual will be available from the Quatech
Technical Support or Sales departments, the Quatech BBS, or the Quatech
World Wide Web site on the Internet.



DETAILS of What's New in Release 4.00
-------------------------------------

 * New platform --- Windows 95/98 is now natively supported
 
      A DLL and VxD for Windows 95 and Windows 98 is provided with Syncdrive
   Release 4.00.  The Windows 95/98 version of Syncdrive supports only native
   32-bit Windows applications.
      The Windows 3.1 version of Syncdrive has been updated to support 
   operation under Windows 95/98.  This may be useful for customers having
   existing 16-bit Windows Syncdrive applications who wish to run them on
   Windows 95/98.


 * Improvement --- DMA buffer allocation under OS/2 greatly improved

      The method for allocating DMA buffers in the OS/2 version of Syncdrive
   has been overhauled.  The performance of the sync_alloc_dma_buffer() API
   had become very poor with OS/2 Warp 4.0.  The newly reworked API performs
   much better.  In testing, computers running Warp 4 that could only allocate
   a few (less than 10) 1 kB DMA buffers with Syncdrive 3.30 can now allocate
   several hundred of those buffers with Syncdrive 4.00.  Results indicate that
   up to several megabytes of memory may be available for DMA buffers with
   Syncdrive 4.00.
   
 * Bug fix --- sync_alloc_dma_buffer() error recovery
 
      In previous releases, once this function failed the application would
   usually be unable to allocate any more DMA buffers even after calling
   sync_free_dma_buffers() to release all the previously allocated buffers.
   This operation has now been corrected.
   


(New from Syncdrive Release 3.30)
---------------------------------

 * New feature --- Block Mode Byte Streaming  

      Byte Streaming allows a continuous "stream" of data to be transparently 
   transmitted or received in Syncdrive's byte sync block mode.  Rather than 
   terminating a frame when the buffer_length value is reached, Syncdrive will
   wrap back to the first location of the comm_buffer array and continue 
   transmitting or receiving data.  
   
      It is up to the application to track the progress of a frame running
   in byte streaming mode.  This can be done by monitoring the buffer_pointer
   field in the com_block structure.  The buffer_pointer will revert to zero
   and count up again as the comm_buffer is recycled. 

      Frames started in byte streaming mode must be stopped manually.  For
   transmit frames, the sync_abort_message() function should be used.  For
   receive frames, the sync_command(HaltReceiver) function should be used.  
   The receiver does not look for block_term characters.
   
      To accommodate byte streaming, the ByteTMsgBuf and ByteRMsgBuf com_block
   structures in SYNCDRIV.H now include a "misc_options" field replacing one
   of the previous "reserved_char_x" fields (reserved_char_1 in ByteTMsgBuf,
   reserved_char_2 in ByteRMsgBuf).  The names of the remaining reserved_char 
   field(s) have been adjusted accordingly. 

      Byte Streaming is enabled by setting bit zero of the misc_options
   field of the respective com_block to one.


Feedback
--------

   Quatech welcomes your comments and suggestions about the features and
performance of this software.  Please contact our Technical Support department
to make your comments.

