|
|
1.1 root 1: /*-
2: * Copyright (c) 1982, 1986 The Regents of the University of California.
3: * All rights reserved.
4: *
5: * Redistribution and use in source and binary forms, with or without
6: * modification, are permitted provided that the following conditions
7: * are met:
8: * 1. Redistributions of source code must retain the above copyright
9: * notice, this list of conditions and the following disclaimer.
10: * 2. Redistributions in binary form must reproduce the above copyright
11: * notice, this list of conditions and the following disclaimer in the
12: * documentation and/or other materials provided with the distribution.
13: * 3. All advertising materials mentioning features or use of this software
14: * must display the following acknowledgement:
15: * This product includes software developed by the University of
16: * California, Berkeley and its contributors.
17: * 4. Neither the name of the University nor the names of its contributors
18: * may be used to endorse or promote products derived from this software
19: * without specific prior written permission.
20: *
21: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31: * SUCH DAMAGE.
32: *
33: * @(#)qvreg.h 7.1 (Berkeley) 5/9/91
34: */
35:
36: /*
37: * derived from: @(#)qvreg.h 1.3 (ULTRIX) 8/21/85
38: */
39:
40: /*
41: * QVSS definitions.
42: */
43: struct qvdevice {
44: unsigned short qv_csr; /* csr */
45: unsigned short qv_xcur; /* cursor x-position */
46: unsigned short qv_mouse; /* mouse position */
47: unsigned short qv_spare1;
48: unsigned short qv_crtaddr; /* crt controller address reg */
49: unsigned short qv_crtdata; /* crt controller data register */
50: unsigned short qv_intdata; /* int controller data register */
51: unsigned short qv_intcsr; /* int controller command/status*/
52: unsigned short qv_dummy[8];
53: unsigned short qv_uartmode; /* uart mode */
54: unsigned short qv_uartstatus; /* uart status */
55: unsigned short qv_uartcmd; /* uart command */
56: unsigned short qv_uartdata; /* uart data */
57: unsigned short qv_spare2;
58: unsigned short qv_uartintstatus; /* uart interrupt status */
59: };
60:
61:
62: /*
63: * csr bit definations
64: */
65: #define QV_19INCH 0x1
66: #define QV_VIDEO_ENA 0x4
67: #define QV_CUR_MODE 0x8
68: #define QV_VIDEO_LP 0x10
69: #define QV_TEST_BIT 0x20
70: #define QV_INT_ENABLE 0x40
71: #define QV_CURSOR_ON 0x80
72: #define QV_MOUSE_ANY 0x700
73: #define QV_MOUSE_A 0x100
74: #define QV_MOUSE_B 0x200
75: #define QV_MOUSE_C 0x400
76: #define QV_MEM_BANK 0x7800
77:
78: /*
79: * Lk201 keyboard
80: */
81: #define LK_UPDOWN 0x86 /* bits for setting lk201 modes */
82: #define LK_AUTODOWN 0x82
83: #define LK_DOWN 0x80
84: #define LK_DEFAULTS 0xd3 /* reset (some) default settings */
85: #define LK_AR_ENABLE 0xe3 /* global auto repeat enable */
86: #define LK_CL_ENABLE 0x1b /* keyclick enable */
87: #define LK_KBD_ENABLE 0x8b /* keyboard enable */
88: #define LK_BELL_ENABLE 0x23 /* the bell */
89: #define LK_LED_ENABLE 0x13 /* light led */
90: #define LK_LED_DISABLE 0x11 /* turn off led */
91: #define LK_RING_BELL 0xa7 /* ring keyboard bell */
92: #define LED_1 0x81 /* led bits */
93: #define LED_2 0x82
94: #define LED_3 0x84
95: #define LED_4 0x88
96: #define LED_ALL 0x8f
97: #define LK_KDOWN_ERROR 0x3d /* key down on powerup error */
98: #define LK_POWER_ERROR 0x3e /* keyboard failure on powerup test */
99: #define LK_OUTPUT_ERROR 0xb5 /* keystrokes lost during inhibit */
100: #define LK_INPUT_ERROR 0xb6 /* garbage command to keyboard */
101: #define LK_LOWEST 0x56 /* lowest significant keycode */
102: #define LK_DIV6_START 0xad /* start of div 6 */
103: #define LK_DIV5_END 0xb2 /* end of div 5 */
104:
105: /*
106: * Keycodes for special keys and functions
107: */
108: #define SHIFT 0xae
109: #define LOCK 0xb0
110: #define REPEAT 0xb4
111: #define CNTRL 0xaf
112: #define ALLUP 0xb3
113:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.