viewioctl.h revision 1.6
11.6Sveego/*	$NetBSD: viewioctl.h,v 1.6 1996/04/21 21:12:40 veego Exp $	*/
21.5Scgd
31.1Smw/*
41.2Schopps * Copyright (c) 1994 Christian E. Hopps
51.1Smw * All rights reserved.
61.1Smw *
71.1Smw * Redistribution and use in source and binary forms, with or without
81.1Smw * modification, are permitted provided that the following conditions
91.1Smw * are met:
101.1Smw * 1. Redistributions of source code must retain the above copyright
111.1Smw *    notice, this list of conditions and the following disclaimer.
121.1Smw * 2. Redistributions in binary form must reproduce the above copyright
131.1Smw *    notice, this list of conditions and the following disclaimer in the
141.1Smw *    documentation and/or other materials provided with the distribution.
151.1Smw * 3. All advertising materials mentioning features or use of this software
161.1Smw *    must display the following acknowledgement:
171.2Schopps *      This product includes software developed by Christian E. Hopps.
181.2Schopps * 4. The name of the author may not be used to endorse or promote products
191.2Schopps *    derived from this software without specific prior written permission
201.1Smw *
211.2Schopps * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
221.2Schopps * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
231.2Schopps * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
241.2Schopps * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
251.2Schopps * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
261.2Schopps * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
271.2Schopps * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
281.2Schopps * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
291.2Schopps * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
301.2Schopps * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
311.1Smw */
321.1Smw
331.4Schopps/*
341.4Schopps * The view major device is a placeholder device.  It serves
351.1Smw * simply to map the semantics of a graphics dipslay to
361.1Smw * the semantics of a character block device.  In other
371.1Smw * words the graphics system as currently built does not like to be
381.1Smw * refered to by open/close/ioctl.  This device serves as
391.4Schopps * a interface to graphics.
401.4Schopps */
411.1Smw
421.1Smwstruct view_size {
431.1Smw    int x;
441.1Smw    int y;
451.4Schopps    u_int width;
461.4Schopps    u_int height;
471.4Schopps    u_int depth;
481.1Smw};
491.1Smw
501.4Schopps#define VIOCREMOVE     _IO('V', 0x0)	/* if displaying remove. */
511.4Schopps#define VIOCDISPLAY    _IO('V', 0x1)	/* if not displaying, display */
521.4Schopps#define VIOCSSIZE	_IOW('V', 0x2, struct view_size)
531.4Schopps#define VIOCGSIZE	_IOR('V', 0x3, struct view_size)
541.4Schopps#define VIOCGBMAP	_IOR('V', 0x4, bmap_t)
551.4Schopps#define VIOCSCMAP 	_IOW('V', 0x5, colormap_t)
561.4Schopps#define VIOCGCMAP 	_IOWR('V', 0x6, colormap_t)
571.6Sveego
581.6Sveego#ifdef _KERNEL
591.6Sveegoint viewioctl __P((dev_t, u_long, caddr_t, int, struct proc *));
601.6Sveegovoid viewprobe __P((void));
611.6Sveego#endif
621.1Smw
63