> > As though anticipating this thread, Joe Campbell in > > "C Programmer's Guide to Serial Communications", > > Howard Sams & Co., 1978, remarks as follows on > > page 144: > Interesting to hear a comment about the IBM PC in a book three years > before the PC appeared.... Yeah. The correct date is 1987. Great to hear from someone who's never made a typographic error on a tedious, but optional, citation > Anyway: the [original IBM PC] BIOS routines for the serial port [are] > far from fancy. But when you accessed the hardware directly > (bypassing BIOS) the Async Adapter performed much much better > than via BIOS. I never experienced the 'required' handshaking in > this way. I agree that the only way to get performance was (and still is) by direct access and I envy your good fortune to not get stuck without a way to disable all forms of hardware handshaking, Rob. Unfortunately I wasn't as lucky. We spent quite a bit of time before figuring out that the NS1645 UART on the original IBM serial and serial/parallel port adapter card was wired in such a way that one could not use software to turn off all the handshaking requirements for reading RS-232. It *had* to "see" a device out there before it would receive anything. Compaq and most of the clones followed the written IBM specifications and not the IBM practice. The clones permitted software to disable all handshaking requirements. IBM later corrected the oversight, but not before we'd spent quite a bit of effort (all of our communications were low level because we were wringing reliable 38.4 Kbaud communications out of that miserable box) on the original adapters. I imagine the Rockwell UART I cited earlier also demands some control signals simply because their target market was in detachable external RS-232 devices that could go wonky if inopportunely unplugged and RX floated. But that's only speculation on my part. Three wire (RX, TX, & Common) RS-232 is certainly convenient, but I still question if it is a good practice to not at least strap the handshaking lines when designing a RS-232 device. [Ironically, I believe the "RS" in "RS-232" stands for "Recommended Standard" -- makes one wonder what the official one is...] Aza D. Oberman -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist