xref: /csrg-svn/share/man/man4/man4.vax/va.4 (revision 61601)
1*61601Sbostic.\" Copyright (c) 1980, 1991, 1993
2*61601Sbostic.\"	The Regents of the University of California.  All rights reserved.
320696Smckusick.\"
447674Scael.\" %sccs.include.redist.man%
520696Smckusick.\"
6*61601Sbostic.\"     @(#)va.4	8.1 (Berkeley) 06/05/93
747674Scael.\"
847674Scael.Dd
947674Scael.Dt VA 4 vax
1047674Scael.Os BSD 4
1147674Scael.Sh NAME
1247674Scael.Nm va
1347674Scael.Nd Benson-Varian interface
1447674Scael.Sh SYNOPSIS
1547674Scael.Cd "controller va0 at uba0 csr 0164000 vector vaintr"
1647674Scael.Cd "disk vz0 at va0 drive 0"
1747674Scael.Sh DESCRIPTION
1847674Scael.Bf -symbolic
1947674Scael(NOTE: the configuration description, while counter-intuitive,
2047674Scaelis actually as shown above.)
2147674Scael.Ef
2247674Scael.Pp
2328179SbloomThe Benson-Varian printer/plotter in normally used with the line printer
2428179Sbloomsystem.
2520696SmckusickThis description is designed for those who wish to drive the Benson-Varian
2620696Smckusickdirectly.
2747674Scael.Pp
2847674ScaelIn print mode, the Benson-Varian uses a modified
2947674Scael.Tn ASCII
3047674Scaelcharacter set.
3147674ScaelMost control characters print various non-
3247674Scael.Tn ASCII
3347674Scaelgraphics such as daggers,
3420696Smckusicksigmas, copyright symbols, etc.
3547674ScaelOnly
3647674Scael.Tn LF
3747674Scaeland
3847674Scael.Tn FF
3947674Scaelare used as format effectors.
4047674Scael.Tn LF
4147674Scaelacts as a newline,
4247674Scaeladvancing to the beginning of the next line, and
4347674Scael.Tn FF
4447674Scaeladvances to the top of
4520696Smckusickthe next page.
4647674Scael.Pp
4720696SmckusickIn plot mode, the Benson-Varian prints one raster line at a time.
4820696SmckusickAn entire raster line of bits (2112 bits = 264 bytes) is sent, and
4920696Smckusickthen the Benson-Varian advances to the next raster line.
5047674Scael.Pp
5147674Scael.Em Note :
5220696SmckusickThe Benson-Varian must be sent an even number of bytes.
5320696SmckusickIf an odd number is sent, the last byte will be lost.
5420696SmckusickNulls can be used in print mode to pad to an even number of bytes.
5547674Scael.Pp
5620697SmckusickTo use the Benson-Varian yourself,
5720697Smckusickyou must realize that you cannot open the device,
5847674Scael.Pa /dev/va0
5947674Scaelif there is an daemon active.
6020697SmckusickYou can see if there is an active daemon by doing a
6147674Scael.Xr lpq 1
6220697Smckusickand seeing if there are any files being printed.
6328179SbloomPrinting should be turned off using
6447674Scael.Xr lpc 8 .
6547674Scael.Pp
6620697SmckusickTo set the Benson-Varian into plot mode include the file
6747674Scael.Aq Pa sys/vcmd.h
6820696Smckusickand use the following
6947674Scael.Xr ioctl 2
7020696Smckusickcall
7147674Scael.Bd -literal -offset indent
7220696Smckusickioctl(fileno(va), VSETSTATE, plotmd);
7347674Scael.Ed
7447674Scael.Pp
7520696Smckusickwhere
7647674Scael.Ar plotmd
7720696Smckusickis defined to be
7847674Scael.Bd -literal -offset indent
7947674Scaelint plotmd[] = { VPLOT, 0, 0 };
8047674Scael.Ed
8147674Scael.Pp
8220696Smckusickand
8347674Scael.Ar va
8420696Smckusickis the result of a call to
8547674Scael.Xr fopen
8620696Smckusickon stdio.
8720696SmckusickWhen you finish using the Benson-Varian in plot mode you should advance to
8820696Smckusicka new page
8947674Scaelby sending it a
9047674Scael.Tn FF
9147674Scaelafter putting it back into print mode, i.e. by
9247674Scael.Bd -literal -offset indent
9347674Scaelint prtmd[] = { VPRINT, 0, 0 };
9447674Scael\&...
9547674Scaelfflush(va);
9647674Scaelioctl(fileno(va), VSETSTATE, prtmd);
9747674Scaelwrite(fileno(va), "\ef\e0", 2);
9847674Scael.Ed
9947674Scael.Sh FILES
10047674Scael.Bl -tag -width /dev/va0xx -compact
10147674Scael.It Pa /dev/va0
10247674Scael.El
10347674Scael.Sh DIAGNOSTICS
10420697SmckusickThe following error numbers are significant at the
10520697Smckusicktime the device is opened.
10647674Scael.Bl -tag -width ENXIOxx
10747674Scael.It Bq Er ENXIO
10820697SmckusickThe device is already in use.
10947674Scael.It Bq Er EIO
11020697SmckusickThe device is offline.
11147674Scael.El
11247674Scael.Pp
11320697SmckusickThe following message may be printed on the console.
11447674Scael.Pp
11547674Scael.Bl -diag
11647674Scael.It va%d: npr timeout.
11747674ScaelThe device was not able to get data from
11847674Scaelthe
11947674Scael.Tn UNIBUS
12047674Scaelwithin the timeout period, most likely because some other
12147674Scaeldevice was hogging the bus.  (But see
12247674Scael.Sx BUGS
12347674Scaelbelow).
12447674Scael.El
12547674Scael.Sh SEE ALSO
12647674Scael.Xr vfont 5 ,
12747674Scael.Xr lpr 1 ,
12847674Scael.Xr lpd 8 ,
12947674Scael.Xr vp 4
13047674Scael.Sh HISTORY
13147674ScaelThe
13247674Scael.Nm
13347674Scaeldriver appeared in
13447674Scael.Bx 4.0 .
13547674Scael.Sh BUGS
13620696SmckusickThe 1's (one's) and l's (lower-case el's) in the Benson-Varian's
13720696Smckusickstandard character set look very similar; caution is advised.
13847674Scael.Pp
13920696SmckusickThe interface hardware is rumored to have problems which can
14047674Scaelplay havoc with the
14147674Scael.Tn UNIBUS .
14247674ScaelWe have intermittent minor problems on the
14347674Scael.Tn UNIBUS
14447674Scaelwhere our
14547674Scael.Xr va
14620697Smckusicklives, but haven't ever been able to pin them down
14720696Smckusickcompletely.
148