Title: Printing Problems Under UNIX with Intelligent Serial I/O Cards
Date: September 1, 1998
Printing problems can occur under Unix operating systems when using Connect Tech Intellicon or NT960 cards. The symptom of this problem is partial completion of print jobs, and if the print job is re-issued the same problem will occur over and over again.
The solution is to add a cat command in your /etc/rc (Xenix), or your /etc/conf/rc.d/cti (ScoUnix) file to keep the port open. The command must be inserted after the driver initialization, ie the cti8boot command or the ntd (Nt960). Edit the file called cti to append sleep 3 and cat < /dev/tty4XX > /dev/null & for each printer port used.
/bin/cti8boot a=d000 p=300 i=10
cat < /dev/tty4a > /dev/null &
This can also be done on the command line for testing purposes.
The reason the port stops printing is because the Unix OS transfers the print job into the Intellicon’s buffers, then issues a close or flush command. Unix has no way of knowing that there is still data in the Intellicon (Nt960) card. This instructs the Intellicon (NT960) to stop transmission of data, and in fact the data is lost. The cat command on the port, keeps the port open and active all the time, preventing the above from happening.
The above recommendation also applies to dumb serial ports as well.
It is also recommended to set the flow control or handshaking parameters for the port. The typical handshaking parameters are X-ON and X-OFF flow control, below is an example of how to set up a ScoUnix/Xenix serial port for these parameters. This can be entered after the “cat” command.
stty ixon ixoff -ixany < /dev/tty4a
For more information on printers, consult your ScoUnix/Xenix documentation.
End of KDB-131