Fix16550 Device Driver v01.05.00 29 NOV 1993 (93333) 11:21:50 Copyright (c) 1993 Professional Software Engineering, Ltd. All rights reserved. This is a brief documentation file for the FIX16550 program. This program has a pretty narrow function -- to fix problems with AMI BIOSes and 16550 ("hi-speed/buffered") UARTS. As an added benefit, the program also happens to permit (usually much older) computers which only recognize COM1: and COM2: to automatically recognize COM3: and COM4: if they are present. Operation is simple: Simply add the line: DEVICE=C:\PATH\FIX16550.SYS (where "C:\PATH\" is replaced by where you really put the file.) into your CONFIG.SYS file. There are no parameters at all. Near the top is best (before any other programs initialize, so they too will know how many ports your machine has, if they care). Since this driver is an initialization-only driver (it does it's job and quits, much like a word processor would -- it doesn't remain in memory to do anything), there is no purpose to loading it high (although the program will operate fine if loaded high to run), and it will not affect memory use in a computer. If you loaded it at the top of your CONFIG.SYS, loading high wouldn't be an option anyway -- your upper memory driver (QEMM, EMM386, NetRoom, 386MAX, etc.) wouldn't be loaded yet. I don't know how widespread the AMI BIOS problem with 16550 FIFOs is, but it appears to exist in the (as of this writing in late 1993) "current" version of the AMI BIOS dated DEC 1991. The problem manifests itself when you have a high-speed UART installed (something which is advised if you use a high speed modem -- most internal high speed modems are equipped with a 16550 equivalent), and use a program which enables the FIFO (the special feature of the 16550 UART chip), but which either does not disable it on exit, or is rebooted while running (which is a valid thing to do, say if the computer is running a BBS, and a user shells to DOS and drops carrier). When the AMI BIOS goes looking for serial ports on startup, it fails to see the port (because it doesn't appear normal, since the FIFO is enabled), and the computer boots up without that port in the list of available ports. Then other software cannot "see" the port as being present, and won't work (such as attempting to run your comm program or the BBS after the reboot). A hard reboot (power cycle, or that red button on the front of the case) will reset the UART at the hardware level, and thus the AMI BIOS will recognize it. This program simply looks for the hardware in a better way than the AMI BIOS does, and adds the ports automatically for you. I've heard that some people have thought that this problem was something wrong with their system board (since it doesn't show up if you hard reboot the machine). Take another look -- you may have an AMI BIOS. While I make a number of references to the AMI BIOS, this program is not dependant in any way on the presence of an AMI BIOS -- there may very well be other BIOSes out there that exibit this or a similar problem. Don't get me wrong -- I like AMI BIOSes very much (I could be using a different one if I wanted). They have a lot of great features, and aside from this one problem, appear quite bug free (unlike DTK/Erso). As for systems that don't recognize COM3: and COM4:, they are fairly widespread, and include PC, 286, and 386 machines, though I don't know about 486 boxes (most companies should have is straight by now). Name brand manufacturers known to have this problem, at least in some models, include Compaq and AST. I originally wrote this utility strictly to deal with my experiences with the AMI BIOS problem. When I called AMI, they told me I needed to get in touch with the system board manufacturer -- which in all likelyhood is some offshore company, and they wouldn't even give me a company name! The AMI BIOS is mentioned in the Microsoft Windows Resource Kit as having serial problems -- and my BIOS is for a 486DX2 machine -- not exactly old technology. v01.03.00 incorporates a detection for the 8514/A video adapter, which conflicts with the use of a COM4: port. With all the port addresses they use for the 8514/A, you'd think they could have left 2E8h alone! v01.04.00 debugging version, not released. v01.05.00 incorporates a fix for an odd bug which caused some ports not to be properly added back to the port table (although they were detected and reset). 8514/A support has been disabled until better documentation is available. This program is ShareWare. A fee is requested for it's use. If you use it (and the only reason you should be using it is if it addresses a problem you do have), a registration of US$10.00 per copy used is required. The grief and annoyance this program can save you over time will be well worth the small registration -- especially if you are a BBS operator. Send cheque or money order (drawn on a U.S. Bank) to: "Sean B. Straw" Professional Software Engineering Post Box 2395 San Rafael, CA 94912-2395 (415) 459-7401