Description
COMM-DRV/VxD Technical Specifications
COMM-DRV/VxD was designed with interoperability in mind. It uses the Windows standard DLL calling conventions. As such, COMM-DRV/VxD may be integrated with any Windows tool, application, or language that can call the Windows API (WIN16 or WIN32). COMM-DRV/VxD may be used with Visual C/C++, Borland C/C++, Watcom C/C++, Visual Basic, Access, Excel, Paradox, and a myriad of other tools and applications.
COMM-DRV/VxD is extremely easy to use. The API is simple, concise, and intuitive. Ample examples are provided. COMM-DRV/VxD may be integrated with all other WCSC communication products.
- Provides support for RS485/RS422 devices. It can automatically drop the RTS signal when all data has been transmitted for optimum control of the RS485 buses or other devices requiring said protocol.
- Provides built in support for the nine bit protocol. With one call the first byte is sent with 9 bits while the others are transmitted normally.
- Supports WIN32, WIN16, CONSOLE, and MS-DOS applications running concurrently.
- Supports any number of serial ports active concurrently with receive and transmit buffers of any size.
- Supports baud rates in excess of 400K.
- Provides automatic hardware flow control(RTS/CTS, DTR/DSR), as well as software flow control(XON/XOFF).
- Provides seamless integration with COMM-DRV/Lib and COMM-DRV/Dos.
- Supports the built in PC COM ports and ALL non-intelligent multiport cards based on the 8250, 16450, 16550, 16650, and 16750 family of UARTs.
- Peek ahead virtually any number of bytes.
- Interrupts, buffering, and flow control handled in 32 bit mode of the CPU in Ring 0.
- Autodetects 16550 and uses it in high speed mode.
- Allows sharing IRQs on supporting hardware.
COMM-DRV/VxD Application Programming Interface (API)
- WCSCVxDBreakOff Resets the port from the break state.
- WCSCVxDBreakOn Puts the port in the break state.
- WCSCVxDBytesInRcvBuf Returns number of bytes in receive buffer.
- WCSCVxDBytesInXmtBuf Returns number of bytes in transmit buffer.
- WCSCVxDCleanup Closes an opened port.
- WCSCVxDDtrOff Turn DTR off.
- WCSCVxDDtrOn Turn DTR on.
- WCSCVxDFlush Purges communication buffers.
- WCSCVxDGetMetrics Return port statistics on specific items.
- WCSCVxDGetPacket Get a packet of data.
- WCSCVxDGetPort Get port metrics.
- WCSCVxDGetRegister Read an 8250/16450/16550 register value.
- WCSCVxDInit Map dynamically to the VxD.
- WCSCVxDInitializePort Open a port.
- WCSCVxDIsAllDataOut Returns true if transmit buffer is empty as well as the UART is empty.
- WCSCVxDOpenPort Opens the serial port(preferred).
- WCSCVxDPutPacket Output a packet of data.
- WCSCVxDPutRegister Write to an 8250/16450/16550 register.
- WCSCVxDRtsOff Turn RTS off.
- WCSCVxDRtsOn Turn RTS on.
- WCSCVxDSetBaudDiv Set new baud rate divisor(for non standard baud rates).
- WCSCVxDSetPortCharacteristics Set new port characteristics(baud rates etc.).
- WCSCVxDSetup Extended port open.
- WCSCVxDSizeOfRcvBuf Get size of receive buffer.
- WCSCVxdSizeOfXmtBuf Get size of transmit buffer.
- WCSCVxDSpaceInRcvBuf Get available space in receive buffer.
- WCSCVxdSpaceInXmtBuf Get available space in transmit buffer.
- WCSCVxDViewPacket Non-destructively reads a packet of data.