1.\" Copyright (c) 1980, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" @(#)va.4 8.1 (Berkeley) 6/5/93 33.\" 34.Dd June 5, 1993 35.Dt VA 4 vax 36.Os BSD 4 37.Sh NAME 38.Nm va 39.Nd Benson-Varian interface 40.Sh SYNOPSIS 41.Cd "controller va0 at uba0 csr 0164000 vector vaintr" 42.Cd "disk vz0 at va0 drive 0" 43.Sh DESCRIPTION 44.Bf -symbolic 45(NOTE: the configuration description, while counter-intuitive, 46is actually as shown above.) 47.Ef 48.Pp 49The Benson-Varian printer/plotter in normally used with the line printer 50system. 51This description is designed for those who wish to drive the Benson-Varian 52directly. 53.Pp 54In print mode, the Benson-Varian uses a modified 55.Tn ASCII 56character set. 57Most control characters print various non- 58.Tn ASCII 59graphics such as daggers, 60sigmas, copyright symbols, etc. 61Only 62.Tn LF 63and 64.Tn FF 65are used as format effectors. 66.Tn LF 67acts as a newline, 68advancing to the beginning of the next line, and 69.Tn FF 70advances to the top of 71the next page. 72.Pp 73In plot mode, the Benson-Varian prints one raster line at a time. 74An entire raster line of bits (2112 bits = 264 bytes) is sent, and 75then the Benson-Varian advances to the next raster line. 76.Pp 77.Em Note : 78The Benson-Varian must be sent an even number of bytes. 79If an odd number is sent, the last byte will be lost. 80Nulls can be used in print mode to pad to an even number of bytes. 81.Pp 82To use the Benson-Varian yourself, 83you must realize that you cannot open the device, 84.Pa /dev/va0 85if there is an daemon active. 86You can see if there is an active daemon by doing a 87.Xr lpq 1 88and seeing if there are any files being printed. 89Printing should be turned off using 90.Xr lpc 8 . 91.Pp 92To set the Benson-Varian into plot mode include the file 93.Aq Pa sys/vcmd.h 94and use the following 95.Xr ioctl 2 96call 97.Bd -literal -offset indent 98ioctl(fileno(va), VSETSTATE, plotmd); 99.Ed 100.Pp 101where 102.Ar plotmd 103is defined to be 104.Bd -literal -offset indent 105int plotmd[] = { VPLOT, 0, 0 }; 106.Ed 107.Pp 108and 109.Ar va 110is the result of a call to 111.Xr fopen 112on stdio. 113When you finish using the Benson-Varian in plot mode you should advance to 114a new page 115by sending it a 116.Tn FF 117after putting it back into print mode, i.e. by 118.Bd -literal -offset indent 119int prtmd[] = { VPRINT, 0, 0 }; 120\&... 121fflush(va); 122ioctl(fileno(va), VSETSTATE, prtmd); 123write(fileno(va), "\ef\e0", 2); 124.Ed 125.Sh FILES 126.Bl -tag -width /dev/va0xx -compact 127.It Pa /dev/va0 128.El 129.Sh DIAGNOSTICS 130The following error numbers are significant at the 131time the device is opened. 132.Bl -tag -width ENXIOxx 133.It Bq Er ENXIO 134The device is already in use. 135.It Bq Er EIO 136The device is offline. 137.El 138.Pp 139The following message may be printed on the console. 140.Pp 141.Bl -diag 142.It va%d: npr timeout. 143The device was not able to get data from 144the 145.Tn UNIBUS 146within the timeout period, most likely because some other 147device was hogging the bus. (But see 148.Sx BUGS 149below). 150.El 151.Sh SEE ALSO 152.Xr vfont 5 , 153.Xr lpr 1 , 154.Xr lpd 8 , 155.Xr vp 4 156.Sh HISTORY 157The 158.Nm 159driver appeared in 160.Bx 4.0 . 161.Sh BUGS 162The 1's (one's) and l's (lower-case el's) in the Benson-Varian's 163standard character set look very similar; caution is advised. 164.Pp 165The interface hardware is rumored to have problems which can 166play havoc with the 167.Tn UNIBUS . 168We have intermittent minor problems on the 169.Tn UNIBUS 170where our 171.Xr va 172lives, but haven't ever been able to pin them down 173completely. 174