I wish it was as simple as Interrupt 14H. The bitter truth is that what should be the simple act of receiving serial data on a P.C., is a nightmare. Interrupt 14H which is what the bioscom function is based on will only work as expected on P.C.'s with an IBM-compatible BIOS. On other systems, it just doesn't work. One is almost forced to write an assembler routine that talks directly with the port. The Int 14H and the bioscom function don't even set up interrupt vectors so one is forced to use lower speeds to keep from missing data. There are assorted TSR programs for DOS that turn Int14h into a reasonably working, interrupt driven serial port, instead of the cripled crock it starts as in a standard PC bios. Check simtel20 mirrors. I think I wrote the first of these in 1982 or there abouts, but that one is probably written in the MIT 8086 cross assembler (not much use anymore?) and better things have been written since... (There followed a bunch of comm programs like kermit with very nice serial drivers of their own, ignoring the existance of int14h. Then along came networks and such, and network OS's started putting their remote serial port APIs on int14. A program you write using int14 should be able to communicate using serial, tcp, netbios, IPX, and others, depending on which TSR is running.) BillW