Path: utzoo!mnetor!uunet!husc6!think!ames!ucbcad!ucbvax!RAND-UNIX.ARPA!bridger%rcc From: bridger%rcc@RAND-UNIX.ARPA (Bridger Mitchell) Newsgroups: comp.os.cpm Subject: Re: MEX1.65 Character Loss Message-ID: <8712301812.AA01201@newton.arpa> Date: 30 Dec 87 18:11:57 GMT References: <8712291428.AA09608@dmc-crc.arpa> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 25 If mex is "smart", it should be polling the modem input status between each sector-write call in the flushing routine, and buffering any received characters for "catch-up" processing when the buffer-flushing is completed. [Ron Fowler: does mex do this?] But if not, it's likely that characters are arriving at the modem port before the buffer-flushing operation completes. Unless the arriving bytes are buffered before they reach mex, the first ones will be overwritten by the later ones, creating a gap in the input stream received by the mex software. The real time required to flush a buffer is system-dependent, probably dominated by the drive's step rate and the track number of the capture file, and also affected by the CPU clock rate. Another system with faster disks, a faster cpu, or even a differently located file, could have no lossage. On your system, if you capture to a ram disk, for example, there may be no lossage. Many systems have 1-3 byte buffering in the UART chip that receives the bytes from the modem; different systems use different UARTS. More buffering can be obtained by writing an interrupt-service routine for the modem ports; only a few bioses have such support, but it may be possible to write the mex overlay that way. --bridger