[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Int 2F Fn 7AF1  - Novell Netware - Access Server Driver - Installation Ch  [N]

   AX = 7AF1h
   BL = sequence number (01h first driver, 02h second, 00h no driver)

Return: AX <> 7AF1h if present
       BH = total number of drivers
       ---if BL nonzero on entry---
       AL = number of ports provided by specified driver
       ES:DI -> driver entry point (see below)
       ES:DX -> ID string

Call driver entry point with:
   AH  function
   01h initialize port
   AL = port number (00h-0Fh)
   ES:BX -> configuration parameter block (see below)
   interrupts disabled

   Return: CF clear if successful
       CF set on error
   02h get port status
   AL = port number (00h-0Fh)
   interrupts disabled

   Return: CF clear if successful
           BL = transmitter status (see below)
           BH = receiver status (see below)
           DL = external status signals (see below)
       CF set on error
       interrupts disabled
   03h get input from port
   AL = port number (00h-0Fh)
   CX = size of data buffer
   ES:BX -> buffer for data
   interrupts disabled

   Return: CF clear if successful
       CF set on error
       interrupts disabled
       CX = number of bytes read

   Note:   the driver will add a NUL to the buffer when a break
         signal is detected
   04h send output data to port
   AL = port number (00h-0Fh)
   CX = number of bytes to send
   ES:BX -> buffer containing data
   interrupts disabled

   Return: CF clear if successful
       CF set on error
       interrupts disabled
       CX = number of bytes actually written
   05h get I/O character counts
   AL = port number (00h-0Fh)
   interrupts disabled

   Return: CF clear if successful
           BX = number of bytes pending transmission
           CX = number of bytes available for reading
       CF set on error
       interrupts disabled
   06h control XON/XOFF
   AL = port number (00h-0Fh)
   DL = new state
       (00h software flow control disabled, else enabled)
   interrupts disabled

   Return: CF clear if successful
       CF set on error
       interrupts disabled
   07h get error counts and statistics
   AL = port number (00h-0Fh)
   ES:BX -> buffer for statistics (see below)
   interrupts disabled

   Return: CF clear if successful
           ES:BX buffer filled
       CF set on error
       interrupts disabled
   08h general request
   AL = port number (00h-0Fh)
   DX = requested operations
       bit 0: flush transmit buffers
       bit 1: flush receive buffers
       bit 4: define XON/XOFF characters
   ES:BX -> XON/XOFF characters (see below) if DX bit 4 set
   interrupts disabled

   Return: CF clear if successful
       CF set on error
       interrupts disabled
   09h deadman timer management
   AL = port number (00h-0Fh)
   BX = next time interval in seconds (0000h to disable timer)
   interrupts disabled

   Return: CF clear
       interrupts disabled
   0Ah get buffer sizes
   AL = port number (00h-0Fh)
   interrupts disabled

   Return: CF clear if successful
          BX = size of transmit buffer
          CX = size of receive buffer
       CF set on error
       interrupts disabled

Values for transmitter status:
 00h   uninitialized
 01h   ready, not transmitting
 02h   transmitting
 03h   XOFF received
 04h   transmitting, buffer full
 05h   XOFF received and buffer full

Values for receiver status:
 00h   uninitialized
 01h   ready
 02h   receive buffer full, data may have been lost

Bitfields for external status signals:
 bits 7,6 undefined
 bit 5 CTS active
 bit 4 DSR active
 bit 3 DCD active
 bits 2,1 undefined
 bit 0 ring indicator

Format of configuration parameter block:
Offset Size    Description
 00h   BYTE    receive baud rate index
       00h 50 bps, 01h 75 bps, 02h 110 bps, 03h 134.5 bps,
       04h 150 bps, 05h 300 bps, 06h 600 bps, 07h 1200 bps,
       08h 1800 bps, 09h 2000 bps, 0Ah 2400 bps, 0Bh 3600 bps,
       0Ch 4800 bps, 0Dh 7200 bps, 0Eh 9600 bps, 0Fh 19200 bps,
       10h 38400 bps, 11h 57600 bps, 12h 115200 bps
 01h   BYTE    receive bits per character (0=5 bits..3=8 bits)
 02h   BYTE    receive stop bits
 03h   BYTE    receive parity
       00h none, 01h odd, 02h even, 03h mark, 04h space
 04h   BYTE    transmit baud rate index (same as receive baud rate)
 05h   BYTE    transmit bits per character (0=5 bits..3=8 bits)
 06h   BYTE    transmit stop bits
 07h   BYTE    transmit parity (same as receive parity)
 08h   BYTE    DTR state (00h off, 01h on)
 09h   BYTE    RTS state (00h off, 01h on)
 0Ah   BYTE    flow control
       00h none, 01h XON/XOFF, 02h RTS/CTS, 03h both
 0Bh   BYTE    break control (00h off, 01h on)

Format of statistics:
Offset Size    Description
 00h   BYTE    port number
 01h   BYTE    external status signals (see above)
 02h   BYTE    transmitter status (see above)
 03h   BYTE    receiver status (see above)
 04h   DWORD   number of characters received
 08h   DWORD   number of characters transmitted
 0Ch   WORD    input parity errors
 0Eh   WORD    input framing errors
 10h   WORD    lost characters due to hardware overrun
 12h   WORD    lost characters due to data buffer overrun

Note:  the counts are not allowed to wrap around; once a count reaches FFFFh
     or FFFFFFFFh, it is no longer incremented

Format of XON/XOFF characters:
Offset Size    Description
 00h   BYTE    04h (number of bytes following)
 01h   BYTE    transmit XON character
 02h   BYTE    transmit XOFF character
 03h   BYTE    receive XON character
 04h   BYTE    receive XOFF character

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson