Path: utzoo!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!wuarchive!udel!rochester!pt.cs.cmu.edu!b.gp.cs.cmu.edu!Ralf.Brown@B.GP.CS.CMU.EDU From: Ralf.Brown@B.GP.CS.CMU.EDU Newsgroups: comp.os.msdos.programmer Subject: Re: Serial input under DesqView Message-ID: <27677cce@ralf> Date: 13 Dec 90 12:06:22 GMT Sender: ralf@b.gp.cs.cmu.edu Organization: Carnegie Mellon University School of Computer Science Lines: 28 In-Reply-To: <1990Dec12.190108.15079@Octopus.COM> In article <1990Dec12.190108.15079@Octopus.COM>, stever@Octopus.COM (Steve Resnick ) wrote: }In article <1990Dec11.032154.18383@dms3b1.uucp> dave@dms3b1.UUCP (Dave Hanna) writes: }>Here's my situation: I have a program that takes serial input at }>19200 baud. By experimentation, I've determined that, with code in }>the interrupt service loop, I can spare about an additional 250 microsec. }>of delay in the interrupt response before risking occasional overruns. }>(This is running on a 25 MHz 386 in real mode.) }> }>When I load the program up under DesqView, with options set to lock }>the program in memory, run in background, and optimize for high-speed }>serial operation, I begin getting overrun errors as soon as I do }>anything in DesqView besides just let the program run. I.e., as soon }>as I tap the Alt key to bring up the main menu window, I get a few }>errors, and everytime I press a key, I get a few more. You need a 16550A UART instead of the standard 16450 (it's a pin-compatible replacement). The 550A has a 16-byte on-chip buffer which largely prevents overruns at high speeds. A necessity for any multitasker at 9600 or above, and useful even at 2400 bps on slower systems. Of course your software will need to know how to handle multiple characters per interrupt and how to turn on the buffer. The changes to support a 16550A are fairly trivial, so that isn't a problem, and much recent software does support it. -- UUCP: {ucbvax,harvard}!cs.cmu.edu!ralf -=- 412-268-3053 (school) -=- FAX: ask ARPA: ralf@cs.cmu.edu BIT: ralf%cs.cmu.edu@CMUCCVMA FIDO: 1:129/3.1 Disclaimer? | I was gratified to be able to answer promptly, and I did. What's that? | I said I didn't know. --Mark Twain