[comp.unix.sysv386] Why does Altos UNIX V "lprint" print so S L O O O W?

bill@twg.bc.ca (Bill Irwin) (03/14/91)

[Followups to comp.unix.sysv386]

Well, another exciting challenge has come my way.  I am
configuring an Okidata 391 aux printer off the serial printer
port of a Wyse 160 terminal connected to an Altos 1000 running
Altos UNIX V.

Altos has added an extension/enhancement to the lp spooling
system called "lprint", which is supposed to use the TERM setting
to look up the entry in /etc/termcap and find the start/stop
transparent printing codes to send to the terminal in order to
print the file.  This is all working (after turning on onlcr in
stty to get the file to print on more than one line 8^( ) except
that the printer is running very slowly.  I mean, print a line -
count one, two - print another line - count one, two.

Is there some way of getting the system to burst data to the
printer faster?  The terminal is running at 38,400 bps and the
printer port is set at 9,600.  With DigiBoard ports there are
printer parameters that you can set that affect the speed and
buffer size that the port driver will work within while printing
to a local printer.  I have no idea where to start looking on
this Altos system.
-- 
Bill Irwin    -       The Westrheim Group     -    Vancouver, BC, Canada
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
uunet!van-bc!twg!bill     (604) 431-9600 (voice) |     Your Computer  
bill@twg.bc.ca            (604) 430-4329 (fax)   |    Systems Partner

allbery@NCoast.ORG (Brandon S. Allbery KB8JRR) (03/21/91)

As quoted from <1143@twg.bc.ca> by bill@twg.bc.ca (Bill Irwin):
+---------------
| Altos has added an extension/enhancement to the lp spooling
| system called "lprint", which is supposed to use the TERM setting
| to look up the entry in /etc/termcap and find the start/stop
| transparent printing codes to send to the terminal in order to
| print the file.  This is all working (after turning on onlcr in
| stty to get the file to print on more than one line 8^( ) except
| that the printer is running very slowly.  I mean, print a line -
| count one, two - print another line - count one, two.
+---------------

"lprint"?  Is this different from adding mc4, mc5, mc0 to the terminfo entry
and then telling pconfig you have a local printer on the terminal's port?  I
don't recall any "lprint" coming up in any of the local printer stuff we've
done, but I do recall a command of that name lying around somewhere.
(Needless to say, we ignored it.)

+---------------
| Is there some way of getting the system to burst data to the
| printer faster?  The terminal is running at 38,400 bps and the
+---------------

The pconfig-based terminal printing is done with hooks in the tty driver; it
works quite quickly, although you probably shouldn't expect to use the screen
at the same time.

"lprint" may be a hack to provide similar functionality without the kernel
hooks (hence, more portably, presumably).  If so, a hack is exactly what it
is:  unless somebody/something does extra work, you can have things go wrong.
Without kernel hooks, the tty driver won't guarantee that, say, your status
line program won't come out on the printer....

++Brandon
-- 
Me: Brandon S. Allbery			    Ham: KB8JRR on 2m, 220, 440, 1200
Internet: allbery@NCoast.ORG		(QRT on HF until local problems fixed)
America OnLine: KB8JRR // Delphi: ALLBERY   AMPR: kb8jrr.AmPR.ORG [44.70.4.88]
uunet!usenet.ins.cwru.edu!ncoast!allbery          KB8JRR @ WA8BXN.OH

bill@bilver.uucp (Bill Vermillion) (03/23/91)

In article <1991Mar21.033308.21226@NCoast.ORG> allbery@ncoast.ORG (Brandon S. Allbery KB8JRR) writes:
>As quoted from <1143@twg.bc.ca> by bill@twg.bc.ca (Bill Irwin):
>+---------------
>| Altos has added an extension/enhancement to the lp spooling
>| system called "lprint", which is supposed to use the TERM setting
>| to look up the entry in /etc/termcap and find the start/stop
>| transparent printing codes to send to the terminal in order to
>| print the file.  This is all working (after turning on onlcr in
>| stty to get the file to print on more than one line 8^( ) except
>| that the printer is running very slowly.  I mean, print a line -
>| count one, two - print another line - count one, two.
>+---------------
>

I had a similar problem under SCO Xenix.   The terminal was a Wyse
60, and the program OSAS was written in Business Basic and used
their way of handling printing (which I hate!).

The Wyse 60 used a parallel printer port and the printer was an
Okidata - in the 320 or 390 series (they had several of each).

You could watch the status line togges the xprt on and off,  and
printing had a puase of 1 to 2 seconds between each line.

Changed the terminal to a Wyse 60 with a serial port and put a
ser/par convertor on, and it ran at proper speeds.  Putting a
par/par buffer on the Wyse 60 with the parallel printer port did
NOT change anything.

Never took the time to actually find out what handshaking was being
done to cause the problem as moving a serial printer port Wyse into
place was the quickest/easiest solution.   I have seen slow
parallel printing before and it appeared to be dependant on the
printer handshake.  One printer would be painfully slow, and swap
another brand in and speed was back.

-- 
Bill Vermillion - UUCP: uunet!tarpit!bilver!bill
                      : bill@bilver.UUCP

ti@gumby.Altos.COM (Ti Kan) (03/23/91)

In article <1143@twg.bc.ca> bill@twg.bc.ca (Bill Irwin) writes:
>[Followups to comp.unix.sysv386]
>
>Well, another exciting challenge has come my way.  I am
>configuring an Okidata 391 aux printer off the serial printer
>port of a Wyse 160 terminal connected to an Altos 1000 running
>Altos UNIX V.
[...]
>Altos has added an extension/enhancement to the lp spooling
>system called "lprint", which is supposed to use the TERM setting
>to look up the entry in /etc/termcap and find the start/stop
>transparent printing codes to send to the terminal in order to
>print the file.  This is all working (after turning on onlcr in

Well, I think you are getting something confused here.  Printing on a
printer connected to the AUX port of a terminal is known at Altos as
"transparent printing", and it is supported under Altos System V
version 5.3[bde] on the Altos System 1000.  But it is _not_ used via a
command called "lprint".  In fact, I looked around my 1000 and found no
such command.  The way such a printer is configured is via the
"pconfig" utility, and the printer is given a name just as any other
printers.  Jobs can be sent to this printer via normal "lp" or "lpr"
commands.  Pconfig sets up the lp spooling system for the printer, but
makes the output device a fifo rather than a device node.  A special
transparent printing daemon process, xpd, is also set up to monitor the
fifo, and make special ioctl() calls to the tty driver to send control
codes to the terminal to switch to the AUX port when characters enter
the fifo.

>Is there some way of getting the system to burst data to the
>printer faster?  The terminal is running at 38,400 bps and the
>printer port is set at 9,600.  With DigiBoard ports there are
>printer parameters that you can set that affect the speed and
>buffer size that the port driver will work within while printing
>to a local printer.  I have no idea where to start looking on
>this Altos system.

When all is properly configured and functioning, transparent printing
on the Altos 1000 should be quite speedy.  Maybe you got the "lprint"
command from somewhere else and it is what's causing your problems?
Also, be sure that the terminfo entry for the Wyse 160 terminal is
correct.  Altos now supports a new terminal (Altos 6160) that is 100%
Wyse 160 compatible.  If you want the up-to-date terminfo entry
for this terminal please e-mail me directly and I can send you a
copy of it.

-Ti
-- 
Ti Kan | vorsprung durch technik!                                       \\\
Internet: ti@altos.com                                                   \\\
UUCP: ...!{sun|sco|pyramid|amdahl|uunet}!altos!ti                     /// \\\
The opinions herein are not necessarily those of Altos.              ////////\

bill@twg.bc.ca (Bill Irwin) (03/26/91)

ti@gumby.Altos.COM (Ti Kan) writes:

} In article <1143@twg.bc.ca> bill@twg.bc.ca (Bill Irwin) writes:
} >[Followups to comp.unix.sysv386]
} >
} >Well, another exciting challenge has come my way.  I am
} >configuring an Okidata 391 aux printer off the serial printer
} >port of a Wyse 160 terminal connected to an Altos 1000 running
} >Altos UNIX V.

Correction.  I believe it is an Altos 5000...at least the model
is 5820.  The output of "uname -a" reports the OS is 3.2 2 i386.

} [...]
} >Altos has added an extension/enhancement to the lp spooling
} >system called "lprint", which is supposed to use the TERM setting
} >to look up the entry in /etc/termcap and find the start/stop
} >transparent printing codes to send to the terminal in order to
} >print the file.  This is all working (after turning on onlcr in

} Well, I think you are getting something confused here.  Printing on a
} printer connected to the AUX port of a terminal is known at Altos as
} "transparent printing", and it is supported under Altos System V

It is running Altos UNIX V 3.2 2, not System V 5.3.....

} version 5.3[bde] on the Altos System 1000.  But it is _not_ used via a
} command called "lprint".  In fact, I looked around my 1000 and found no
} such command.  The way such a printer is configured is via the

This command is in the docs I have for 3.2.

} "pconfig" utility, and the printer is given a name just as any other
} printers.  Jobs can be sent to this printer via normal "lp" or "lpr"
} commands.  Pconfig sets up the lp spooling system for the printer, but
} makes the output device a fifo rather than a device node.  A special
} transparent printing daemon process, xpd, is also set up to monitor the
} fifo, and make special ioctl() calls to the tty driver to send control
} codes to the terminal to switch to the AUX port when characters enter
} the fifo.

I am very familiar with the pconfig utility.  This system uses
sysadmsh.  We were told by an Altos support technician that the
xpd for this OS was not ready at the time of the release, but
should be ready by the end of this month.  This will allow
transparent printing to be spooled.  The lprint command (which is
also available through "man lprint") says that the aux port
on/off sequence is retrieved from the /etc/termcap entry for the
terminal.  It also says NOT to touch the keyboard while the job
is printing.  This appears to be a "cat" to the terminal port.

Without a specific process to set stty onlcr on the terminal
line, the entire print job prints on one line on the printer!

} When all is properly configured and functioning, transparent printing
} on the Altos 1000 should be quite speedy.  Maybe you got the "lprint"
} command from somewhere else and it is what's causing your problems?

Check your 3.2 documentation.

} -Ti
} --
} Ti Kan | vorsprung durch technik!                                       \\\
} Internet: ti@altos.com                                                   \\\
} UUCP: ...!{sun|sco|pyramid|amdahl|uunet}!altos!ti                     /// \\\
} The opinions herein are not necessarily those of Altos.              ////////\
-- 
Bill Irwin    -       The Westrheim Group     -    Vancouver, BC, Canada
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
uunet!van-bc!twg!bill     (604) 431-9600 (voice) |     Your Computer  
bill@twg.bc.ca            (604) 430-4329 (fax)   |    Systems Partner