Newsgroups: comp.windows.ms Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!caen!ox.com!math.fu-berlin.de!fauern!faui43.informatik.uni-erlangen.de!testurm From: testurm@immd4.informatik.uni-erlangen.de (Torsten Sturm) Subject: Re: Windows handling multi-tasking with comm. pgms. Message-ID: <1991Jun28.161908.681@informatik.uni-erlangen.de> Organization: CSD., University of Erlangen, Germany References: <1991Jun27.232646.9501@uwovax.uwo.ca> Date: Fri, 28 Jun 1991 16:19:08 GMT Lines: 26 Hi, I'm working on a DDK-Driver, so I have the source code of the comm.drv driver. The thing is, that this driver is not sending and receiving an array of characters on an interrupt-based way !! (BTW the assembler code written there is a terrible one, i've not expected that from MS). If you send a buffer of chars to the commport, you call WriteComm(..), which (and now listen good) make a while loop, calling for each char a routine named $SNDCOMM, not like a normal commdriver with an inter- rupt scheme !! So the best speed you can expect is 9600, if you are lucky. In 386-Mode, the is additionally a vitual device driver between the port and the windows comm.drv, which handles the intterupts ! So it could be even slower than in 286-mode ! That all is common weakness of Windows ! Hope that helps !! --- Torsten Sturm tnsturm@faui09.informatik.uni-erlangen.de tnsturm@faui40.informatik.uni-erlangen.de testurm@faui41.informatik.uni-erlangen.de testurm@faui43.informatik.uni-erlangen.de storm@faui80.informatik.uni-erlangen.de