Xref: utzoo comp.mail.uucp:3456 comp.sys.m68k:1223 Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!orstcs!ogccse!unmvax!ncar!mailrus!ames!amdahl!nsc!pyramid!csg From: csg@pyramid.pyramid.com (Carl S. Gutekunst) Newsgroups: comp.mail.uucp,comp.sys.m68k Subject: Re: UUCP sending BREAK Message-ID: <81745@pyramid.pyramid.com> Date: 23 Aug 89 04:09:28 GMT References: <109@bdt.UUCP> Reply-To: csg@pyramid.pyramid.com (Carl S. Gutekunst) Distribution: usa Organization: Pyramid Technology Corp., Mountain View, CA Lines: 19 In article <109@bdt.UUCP> david@bdt.UUCP (David Beckemeyer) writes: >The problem is the tty driver doesn't seem to know how to send a BREAK. > > if (isatty(fn)) > (void) ioctl(fn, TCSBRK, 0); > >Nothing seems to happen when the above code is executed. Ugly. Assuming you have source -- it appears that you do -- the classic work- around from Version 7 UNIX should suffice. Simply drop the line baud to some very small number, like B50, transmit a NULL character, and then restore the speed. At 50 bps, one NULL gives you a nicely shaped 180ms pulse, which will do for a BREAK almost anywhere. On 4.3BSD, which has no timed BREAK, I've actually found this works better than the "normal" technique of forcing the line to a space state, waiting on an interval timer, then restoring.