Here's some help. I just spent a week figuring this one out.  If you're using
DOS 4.01 (probably some others too), it already knows about COM3 &4. Most
BIOS's only scan for COM1 &2 though.  You can test this by trying to open COM3
at the DOS prompt--if you get 'illegal device' then fix will work.  The ROM
BIOS checks for comm ports and if found puts their I/O addresses at absolute
memory location 0x400 (400h, or 40:0). If you set locations 0x404 & 0x406 to
the I/O addresses of your COM3 & 4 port (normally 0x3E8 & 0x2E8) then try to
open the COM port as a file to see if that fixes it. By 'open file' I mean try
'copy x com3' where x is a small text file. After the fix you may not get
'illegal device' but another error message caused by the retry default of the
com port--this is not a problem for windows though.

What I did was to write a tiny assembly language program to stuff these values
into low memory during the Autoexec. I you like I could upload it.

I also found that programs other than terminal which directly access the comm
ports (e.g. ProComm) worked, but dropped characters in doing downloads in the
background at 2400 BAUD.  Once COM3 &4 were logged in, apparently windows does
some buffering of its own.

                        Good luck,
                          Rod Allen