BBS: Inland Empire Archive
Date: 03-05-93 (17:40)             Number: 397
From: HANK TASSIN                  Refer#: NONE
  To: MICHAEL LOWE                  Recvd: NO  
Subj: QB/QBX 16550 PROBLEMS          Conf: (2) Quik_Bas
Hello Michael!

Thursday February 25 1993 02:24, Michael Lowe wrote to Dave Cleary:

 ML>  How do I go about Detecting/Disabling (More important) 16550 FIFOs

The following is an excerpt from "Introduction to PC
Communications" mainly by Phil Becker, author of TBBS.

The address for the following is base+2 (I assume the base
address of the COM port in question).

"Writing to the FIFO Control Register can turn FIFO mode either on or off.

If bit 0 is set to 1, the 16550 is changed to FIFO mode.
If you write a 0 into this bit, the 16550 is changed back
to the 8250-compatible mode.

Setting bit 1 to 0 clears all the input FIFO registers.  If
a character is partially recieved by the input shift
register, that character is not affected. This bit self-
clears after the reset occurs.

Setting bit 2 to 1 clears the output FIFO registers.  This
bit self-clears after the reset occurs.

When the 16550 is switched into FIFO mode, two other
registers change, using two previously unused (in the 8250
UART) bits.
The major modifications take place in the Interrupt Identification Register.
Bits 7 and 6 each become a 1 to indicate the the 16550 has
switched to FIFO mode.  These bits may be used to detect
the presence of a 16550 UART.  If you write to the FIFO
Control Register on an 8250 or 16450 UART, nothing happens.
Thus if you write a command to enable the FIFO mode, you
then can check the high-order bits of the Interrupt
Identification Register.  If they remain 0, the UART is not
a 16550.  If they switch to 1, the serial port does have a
16550 UART."

Also in the book is MASM code to create a serial port
driver (TSR) which is written to take advantage of the
16550's FIFO mode, but I don't know how to convert that
into something QB4.5 can use.  Perhaps you or someone else
can take the above info and come up with something?


--- GoldED 2.40.P0720
 * Origin: PLA - Professional Lurker Association (1:3800/6.9)
Outer Court
Echo Basic Postings

Books at Amazon:

Back to BASIC: The History, Corruption, and Future of the Language

Hackers: Heroes of the Computer Revolution (including Tiny BASIC)

Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution

The Advent of the Algorithm: The Idea that Rules the World

Moths in the Machine: The Power and Perils of Programming

Mastering Visual Basic .NET