Date: Thu, 12 Sep 1996 06:34:19 -0400 From: edward.ing@utoronto.ca To: kelly@fsl.noaa.gov Cc: questions@freebsd.org Subject: Re: stty, printcap, ixon, Postscript printer, flow control problems? Message-ID: <3237E72B.4D90@utoronto.ca> References: <199609102035.UAA24117@gatekeeper.fsl.noaa.gov>
next in thread | previous in thread | raw e-mail | index | archive | help
In reply to Edward Ing's query about how to enable software flow control Sean Kelly wrote: > Use the settings defined in > /usr/include/sys/ioctl_compat.h. You'll want the TANDEM flag, and > probably the ANYP, LITOUT, FLUSHO, and PASS8 flags. Try these > settings in your /etc/printcap. > > :fs#0x82000c1:xs#0x820: > > Now, if you're using FreeBSD-current, then you've got a much more > friendly interface that even uses the termios settings: > > :ms=cs8,-cstopb,-parenb,ixon,ixoff,cread,clocal,-opost,-echo,-echonl: > However, a few problems remain. Software flow control seems to be working, but the entire Postscript is not printed. Before I enabled software flow control as you suggested, only the first two pages of a postscript file were printed. When I enabled software flow control, flow control seemed to work because a significant portion of the file would now be printed, however, not the entire file. The problem seems to be a spurious problem since when I tried to reprint a certain document, the printing would stop on different pages for different tries. Furthermore, some long documents printed fine, whereas some shorter documents failed to print entirely. A second, possibly related problem, is that print spooling hangs and does not restart after I have reinserted the paper tray with a new batch of paper in response to a paper out signal (I am using lprps which indicates on the console that paper is out.) When the spooler hangs without having completed a document, I have found that "lpc>status lp" indicates that the spooling is fine and that printing is proceeding, which is contrary to the case. When the spooler hangs with a paper tray out or paper out, the "lpc>status lp" indicates that the paper is out or removed, but it does not resume after I have reinserted the paper tray. The first problem is my central concern. My first supicion was that my printer does not have enough memory, (it is a QMS PSJet+, 412K, postscript 42., which I can no longer upgrade because the printer is no longer supported by the manufacturer) and that the data overflows. I reason that this suspicion is unwarranted because the printer, when its buffer is full, should tell the spooler to suspend the flow of data with flow control until the data currently in the buffer is printed. Can I so easily dismiss this suspicion? My second suspicion is that flow control is really not working properly because it seems that the spooler is not acknowledging the start character from the printer to resume sending the data, or that the start character is lost. (Is it the spooler which handles software flow control, or is the kernel?) (I turned on ixany to ensure that any character would begin re-sending of data, and this seem to work for a while.) What possible problems can there be with software flow control? Unfortunately, I don't know how my printer realy conducts flow control, but I do know that as a default software flow control is better than hardwired flow control(which doesn't work at all). I don't have the manuals because the previous owner, an Windows user, did not appreciate the value of manuals and tossed them out. Do you know of the Postcript commands which will intialize both software and hardware flow control on a postscript printer? A third suspicion is that some spurious control character is getting in there. I will try setting the RAW flag, et al., (fs#0x82000e1), but I do not think that this will help much. Do you know the significance of MDMBUF, TOSTOP, PENDIN, DECCTQ? The sys_ioctl_compat.h does not say a heck of a lot, and these flags might help. Edward Ing. P. S. If I ever successfully get this printing sorted out, I will add a few pages to the handbook!!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3237E72B.4D90>