1/*	$NetBSD: qdioctl.h,v 1.4 2006/10/09 17:04:36 christos Exp $	*/
2/*-
3 * Copyright (c) 1982, 1986
4 *	The Regents of the University of California.  All rights reserved.
5 * (c) UNIX System Laboratories, Inc.
6 * All or some portions of this file are derived from material licensed
7 * to the University of California by American Telephone and Telegraph
8 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
9 * the permission of UNIX System Laboratories, Inc.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
13 * are met:
14 * 1. Redistributions of source code must retain the above copyright
15 *    notice, this list of conditions and the following disclaimer.
16 * 2. Redistributions in binary form must reproduce the above copyright
17 *    notice, this list of conditions and the following disclaimer in the
18 *    documentation and/or other materials provided with the distribution.
19 * 3. Neither the name of the University nor the names of its contributors
20 *    may be used to endorse or promote products derived from this software
21 *    without specific prior written permission.
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 *
35 *	@(#)qdioctl.h	7.2 (Berkeley) 1/21/94
36 */
37
38/*
39 *	derived from: qdioctl.h	1.1	(ULTRIX)	8/22/85
40 */
41/*
42 * QDSS IOCTL definitions
43 */
44
45
46/************************************************************************
47 *									*
48 *			Copyright (c) 1985 by				*
49 *		Digital Equipment Corporation, Maynard, MA		*
50 *			All rights reserved.				*
51 *									*
52 *   This software is furnished under a license and may be used and	*
53 *   copied  only  in accordance with the terms of such license and	*
54 *   with the  inclusion  of  the  above  copyright  notice.   This	*
55 *   software  or  any  other copies thereof may not be provided or	*
56 *   otherwise made available to any other person.  No title to and	*
57 *   ownership of the software is hereby transferred.			*
58 *									*
59 *   This software is  derived  from  software  received  from  the	*
60 *   University    of   California,   Berkeley,   and   from   Bell	*
61 *   Laboratories.  Use, duplication, or disclosure is  subject  to	*
62 *   restrictions  under  license  agreements  with  University  of	*
63 *   California and with AT&T.						*
64 *									*
65 *   The information in this software is subject to change  without	*
66 *   notice  and should not be construed as a commitment by Digital	*
67 *   Equipment Corporation.						*
68 *									*
69 *   Digital assumes no responsibility for the use  or  reliability	*
70 *   of its software on equipment which is not supplied by Digital.	*
71 *									*
72 ************************************************************************/
73/***************************************************************************
74*	revision history: (belongs in sccs)
75****************************************************************************
76*
77* 22 oct 85  longo  fixed QD_PRGTABRES cmd number to be 22 instead of 12
78* 14 oct 85  longo  added QD_KERN_LOOP and QD_KERN_UNLOOP
79* 02 oct 85  longo  added QD_MAPCOLOR and QD_UNMAPCOLOR
80* 17 sep 85  longo  made QD_MAPIOBUF a read/write command type
81*
82***************************************************************************/
83
84
85#ifdef KERNEL
86#include "sys/ioctl.h"
87#else
88#include <sys/ioctl.h>
89#endif
90#include <machine/qevent.h>	/* struct _vs_event, _vs_cursor */
91#include <machine/qduser.h>	/* struct prgkbd, qdmap, prg_cursor */
92
93
94#define QD_GETEVENT	_IOR('g', 1, struct _vs_event) /* get oldest event */
95#define QD_WTCURSOR	_IOW('g', 2, short[32])       /* write cursor bitmap */
96#define QD_RDCURSOR	_IOR('g', 3, 64)           /* read cursor bitmap */
97#define QD_CLRSCRN	_IO('g', 4) 		/* clear the screen */
98#define QD_RDCONFIG	_IOR('g', 5, short)        /* read QDSS configuration */
99#define QD_PRGMOUSE	_IOW('g', 6, char)	/* program mouse */
100#define QD_PRGTABLET	_IOW('g', 7, char) 	/* program tablet */
101#define QD_PRGKBD	_IOW('g', 8, struct prgkbd) /* program LK201 kbd */
102#define QD_MAPDEVICE	_IOR('g', 9, struct qdmap) /* map device to user */
103#define QD_MAPIOBUF 	_IOWR('g', 10, void *)     /* map DMA iobuf to user */
104#define QD_MAPEVENT	_IOR('g', 11, void *)     /* map event queue to user */
105#define QD_PRGCURSOR	_IOW('g', 12, struct prg_cursor) /* program cursor */
106#define QD_RESET	_IO('g', 13)  	    /* set device & driver defaults */
107#define QD_POSCURSOR	_IOW('g', 14, struct _vs_cursor) /* position cursor */
108#define QD_SET		_IO('g', 15)  	    /* set DUART & driver defaults */
109#define QD_MAPSCROLL    _IOR('g', 16, void *)  /* map scroll param area */
110#define QD_UNMAPSCROLL  _IO('g', 17)            /* unmap scroll param area */
111#define QD_MAPCOLOR     _IOR('g', 18, void *)  /* map color map write buf */
112#define QD_UNMAPCOLOR   _IO('g', 19)            /* unmap color map write buf */
113#define QD_KERN_LOOP    _IO('g', 20)       /* detour kernel console output */
114#define QD_KERN_UNLOOP  _IO('g', 21)       /* un-detour kernel console output */
115#define QD_PRGTABRES	_IOW('g', 22, short) /* program tablet resolution */
116