[comp.sys.hp] How can I turn on Xon/Xoff if HPGL plotter

cs00wsc@unccvax.uncc.edu (Wen-Shiang Chin) (06/19/91)

Hi,
	I have a HP Prodraft DXL plotter was connected a HP 300
workstation running HP-UX 7.05. It works perfectly. Recently,
I bought a sony NEWS laptop 3250 runnign NEWS-OS 5.01 and connect
the plotter directly to the sony machine. I ported my old hpgl files
from HP machine to sony machine and try to plot them out; but it seems not
work properly. I read the sony document and it says the data flow is
using a Xon/Xoff handshaking method. My question is how can I
set the Xon/Xoff on within the hpgl file. My hpgl files was generated
by C program. Can someone tell me how can write this routine in
C. Or, there may be another reason cause that plotter works unproperly.
Do I need a printer filter for the plotter? Any suggestion will
be appreciated!

Thanks in advance.

k@hprnd.rose.hp.com (Steve Kao) (06/21/91)

Wen-Shiang Chin posts:
> 	I have a HP Prodraft DXL plotter was connected a HP 300
> workstation running HP-UX 7.05. It works perfectly. Recently,
> I bought a sony NEWS laptop 3250 runnign NEWS-OS 5.01 and connect
> the plotter directly to the sony machine. I ported my old hpgl files
> from HP machine to sony machine and try to plot them out; but it seems not
> work properly. I read the sony document and it says the data flow is
> using a Xon/Xoff handshaking method. My question is how can I
> set the Xon/Xoff on within the hpgl file. My hpgl files was generated
> by C program. Can someone tell me how can write this routine in
> C. Or, there may be another reason cause that plotter works unproperly.
> Do I need a printer filter for the plotter? Any suggestion will
> be appreciated!

The way Xon/Xoff handshaking works is when the receiver's buffer starts
to get full, it transmits an XOFF byte (a DC3 in ASCII, or 0x013).  When
the receiver's buffer becomes more empty, it transmits an XON (a DC1 in
ASCII, or 0x011).  This is usually handled at the driver level.  The
plotter's serial driver transmits the Xon/Xoff bytes, and the computer's
serial driver stops transmitting when it sees an XOFF and resumes when
it sees an XON.

From what you're describing, it sounds like your plotter is not
configured for Xon/Xoff.  If not, it must be using a hardware handshake
while talking to your HP workstation.  You should get a plotter manual and
see how to configure it for Xon/Xoff.  Perhaps you could reconfigure
your Sony for hardware handshaking?

You cannot turn on Xon/Xoff within your hpgl file.  Xon/Xoff is handled
at the driver levels within the computer and the plotter.

Good luck,
- Steve Kao

tak@hprnd.rose.hp.com (Tom Keaveny) (06/21/91)

/ hprnd:comp.sys.hp / cs00wsc@unccvax.uncc.edu (Wen-Shiang Chin) /  7:34 pm  Jun 18, 1991 /
>Hi,
>	I have a HP Prodraft DXL plotter was connected a HP 300
>workstation running HP-UX 7.05. It works perfectly. Recently,
>I bought a sony NEWS laptop 3250 runnign NEWS-OS 5.01 and connect
>the plotter directly to the sony machine. I ported my old hpgl files
>from HP machine to sony machine and try to plot them out; but it seems not
>work properly. I read the sony document and it says the data flow is
>using a Xon/Xoff handshaking method. My question is how can I
>set the Xon/Xoff on within the hpgl file. My hpgl files was generated
>by C program. Can someone tell me how can write this routine in
>C. Or, there may be another reason cause that plotter works unproperly.
>Do I need a printer filter for the plotter? Any suggestion will
>be appreciated!

Try inserting the following strings at the head of your file:

	ESC.I80;0;19:		/* this turns on Xon/Xoff with Xon=<CTL-Q> */
				/* and an Xoff threshhold of 80 characters */
	ESC.N10;17:		/* this sets Xoff=<CTL-S> and set the inter- */
				/* character delay at 10 milliseconds	*/

Then add one of the following two strings to determine the behaviour of
the Data Terminal Ready (CD) line:

	ESC.@;0:		/* use this to disable hardwire handshake */
	ESC.@;1:		/* use this to enable hardwire handshake */

In the above strings "ESC" represents the ASCII escape character. 

The generic syntax of the RS-232 control strings is as follows:

	ESC.I<p1>;<p2>;<p3>:

		<p1>	::	Xoff threshhold (in characters) [decimal string]
		<p2>	::	Set to 0 to enable Xon/Xoff 	[ascii string]
		<p3>	::	Xon trigger character		[ascii string]

	ESC.N<p1>;<p2>:

		<p1>	::	Intercharacter delay (msecs)	[decimal string]
		<p2>	::	Xoff trigger character		[ascii string]

	In both cases,

		[ascii string] :: decimal equivalent for an ASCII character
				  E.g.    

				10 ::  Line Feed
				13 ::  Carriage Return
				17 ::  DC1 / <CTL-Q>
				19 ::  DC3 / <CTL-S>
>
>Thanks in advance.
>----------

andrea@sdd.hp.com (Andrea K. Frankel) (06/21/91)

In article <3471@unccvax.uncc.edu> cs00wsc@unccvax.uncc.edu (Wen-Shiang Chin) writes:
>Hi,
>	I have a HP Prodraft DXL plotter was connected a HP 300

I assume you meant the HP DraftPro DXL.

>I read the sony document and it says the data flow is
>using a Xon/Xoff handshaking method. My question is how can I
>set the Xon/Xoff on within the hpgl file. 

The quickest thing to try is to send <esc>.P, where <esc> is ASCII 27 or
0x1B, the escape character.  This sets up a number of Xon/Xoff
parameters which work in a wide variety of cases, but not in all.  If
<esc>.P doesn't solve your problem, you'll need to use the <esc>.I,
<esc>.N, and <esc>.M commands to set various parameters.

This can all be found in the HP DraftPro DXL/EXL Plotters Programmers
Reference Manual, pages 4-17 through 4-19.

Have fun!


Andrea Frankel, Hewlett Packard, San Diego Technical Graphics Div., R&D Lab
	"wake now!  Discover that you are the song that the morning brings..."
______________________________________________________________________________
Internet : andrea@sdd.hp.com (or andrea%hp-sdd@nosc.mil or @ucsd.edu)
UUCP     : {hplabs|nosc|hpfcla|ucsd}!hp-sdd!andrea 
CSNET    : andrea%hp-sdd@hplabs.csnet
USnail   : 16399 W. Bernardo Drive - Mailstop 61U65, San Diego CA 92127-1899
Voice    : (619) 592-4664