Subject: BIOS INT14 Function Description Driver: RocketPort INT14/FOSSIL driver Revised: 12/2/97 OVERVIEW ==================================== The original IBM PC INT14 functions ended with Function 3. FOSSIL drivers extended INT14 by adding calls starting with Function 4. IBM then extended INT14 with new Functions 4 and 5, with the result being an overlap between the two implementations of INT14. The -j switch option allows you to pick between the IBM or FOSSIL functions 4 and 5. If you need both, FOSSIL functions 1EH and 1FH are the same as the IBM INT 14 functions 4 and 5, respectively. (See fu.c for functions and bit definitions written in C.) FUNCTION DESCRIPTIONS ==================================== Function 0, Purpose: Initialize communications port AH = 0 (function number) DX = Port number, where 0=COM1, 1=COM2, 2=COM3, etc. AL = unsigned char Parm; Communications parameters, as follows: Bits 7 - 5: Baud Rate: 000 = 19200 baud 001 = 38400 baud 010 = 300 baud 011 = 600 baud 100 = 1200 baud 101 = 2400 baud 110 = 4800 baud 111 = 9600 baud Bits 4 - 3: Parity: 00 = None 10 = None 01 = Odd 11 = Even Bit 2: Stop bits: 0 = 1 stop bit 1 = 2 stop bits Bits 1 - 0: Data bits: 10 = 7 bits 11 = 8 bits Returns: AX = Modem status in low byte(AL), line status in high byte(AH). (See function 03 for details) ==================================== Function 1, Purpose: Transmit a character AH = 1 (function number) DX = Port number, where 0=COM1, 1=COM2, 2=COM3, etc. AL = character to transmit Returns: AX = Modem status in low byte(AL), line status in high byte(AH). (See function 03 for details) If the data byte cannot be transmitted within the time-out period, LNSTAT_TIMEOUT will be returned in the high byte. ==================================== Function 2, Purpose: Receive a character. AH = 2 (function number) DX = Port number, where 0=COM1, 1=COM2, 2=COM3, etc. Returns: AL = character received AH = line status in high byte(AH). (See function 03 for details) If the data byte cannot be recieved within the time-out period, LNSTAT_TIMEOUT will be returned in the high byte. ==================================== Function 3, Purpose: Return Modem/Port Status. AH = 3 (function number) DX = Port number, where 0=COM1, 1=COM2, 2=COM3, etc. Returns: AX = Modem status in low byte(AL), line status in high byte(AH). (See function 03 for details) AH = High byte can be 0 or any of the following line status flags: LNSTAT_DATARDY - on if receive data available and waiting to be read. LNSTAT_OVRRUN - on if a overrun error was detected LNSTAT_PARITY - on if a parity error detected LNSTAT_FRAMING - on if a receive framing error detected LNSTAT_BREAK - on if a receive break condition detected LNSTAT_THRE - on if transmitter has room in transmit buffer LNSTAT_TE - on if transmitter is completely empty LNSTAT_TIMEOUT - on if a timeout occurred in functions 1 or 2. AL = Low byte can be 0 or any of the following modem control flags: MDMSTAT_CTS - on if CTS input signal is active. MDMSTAT_DSR - on if DSR input signal is active. MDMSTAT_CD - on if DCD input signal is active. MDMSTAT_DCTS - on if CTS has changed since last read. MDMSTAT_DDSR - on if DSR has changed since last read. MDMSTAT_DCD - on if DCD has changed since last read. #define LNSTAT_DATARDY 0x0100 #define LNSTAT_OVRRUN 0x0200 #define LNSTAT_PARITY 0x0400 #define LNSTAT_FRAMING 0x0800 #define LNSTAT_BREAK 0x1000 #define LNSTAT_THRE 0x2000 #define LNSTAT_TE 0x4000 #define LNSTAT_TIMEOUT 0x8000 #define MDMSTAT_DCTS 0x0001 #define MDMSTAT_DDSR 0x0002 #define MDMSTAT_DRI 0x0004 #define MDMSTAT_DCD 0x0008 #define MDMSTAT_CTS 0x0010 #define MDMSTAT_DSR 0x0020 #define MDMSTAT_RI 0x0040 #define MDMSTAT_CD 0x0080 ==================================== Function 4, Purpose: Extended Initialize communications port AH = 4 (function number) DX = Port number, where 0=COM1, 1=COM2, 2=COM3, etc. AL = 0 to turn off break condition, 1 to turn on break condition. BH = Parity setting, 0 = No parity, 1 = Odd parity, 2 = Even parity 3 = Stick parity odd (not supported) 4 = Stick parity even (not supported) BL = Stop bits, 0=1 stop, 1=2 stop CH = 2 = 7 bits, 3 = 8 bits CL Baud rate: 00h 110 baud 01h 150 baud 02h 300 baud 03h 600 baud 04h 1200 baud 05h 2400 baud 06h 4800 baud 07h 9600 baud 08h 19200 baud 09h 38400 baud 0Ah 57600 baud 0Bh 76800 baud 0Ch 115200 baud 0dh 230400 baud 0eh 460800 baud Returns: AX = Modem status in low byte(AL), line status in high byte(AH). (See function 03 for details) ==================================== Function 5, Purpose: Extended Read/Write Modem Control Registers. AH = 4 (function number) DX = Port number, where 0=COM1, 1=COM2, 2=COM3, etc. AL = set to 0 to read modem control register, set to 1 to write modem control register. BL = Modem control register contents (if RegAL = 0x01) Bit: Significance: 0 DTR 1 RTS 2 Out1 (not supported on RocketPort) 3 Out2 (not supported on RocketPort) 4 Loop 5-7 Reserved Although bits 2 and 3 are not supported on RocketPort, their state is saved and reported back when the modem control register is read. Returns: AX = Modem status in low byte(AL), line status in high byte(AH). (See function 03 for details)Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.