No empty .Rs/.Re
[netbsd-mini2440.git] / sys / arch / pmax / ibus / pmreg.h
blob3375a7086987867f15f37872a2f24cddfbda58b8
1 /* $NetBSD: pmreg.h,v 1.1.12.3 2004/09/21 13:20:21 skrll Exp $ */
3 /*
4 * Copyright (c) 1992, 1993
5 * The Regents of the University of California. All rights reserved.
7 * This code is derived from software contributed to Berkeley by
8 * Ralph Campbell.
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 * 3. Neither the name of the University nor the names of its contributors
19 * may be used to endorse or promote products derived from this software
20 * without specific prior written permission.
22 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
23 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32 * SUCH DAMAGE.
34 * @(#)pmreg.h 8.1 (Berkeley) 6/10/93
37 #ifndef _PMREG_H_
38 #define _PMREG_H_
41 * Structure to describe the programmable cursor chip (DC503) from DEC.
43 typedef volatile struct PCCRegs {
44 u_short cmdr; /* cursor command register */
45 short pad1;
46 u_short xpos; /* cursor X position */
47 short pad2;
48 u_short ypos; /* cursor Y position */
49 short pad3;
50 u_short xmin1; /* region 1 left edge */
51 short pad4;
52 u_short xmax1; /* region 1 right edge */
53 short pad5;
54 u_short ymin1; /* region 1 top edge */
55 short pad6;
56 u_short ymax1; /* region 1 bottom edge */
57 short pad7[9];
58 u_short xmin2; /* region 2 left edge */
59 short pad8;
60 u_short xmax2; /* region 2 right edge */
61 short pad9;
62 u_short ymin2; /* region 2 top edge */
63 short pad10;
64 u_short ymax2; /* region 2 bottom edge */
65 short pad11;
66 u_short memory; /* cursor sprite pattern load */
67 } PCCRegs;
70 * Bits in pcc_cmdr.
72 #define PCC_TEST 0x8000
73 #define PCC_HSHI 0x4000
74 #define PCC_VBHI 0x2000
75 #define PCC_LODSA 0x1000
76 #define PCC_FORG2 0x0800
77 #define PCC_ENRG2 0x0400
78 #define PCC_FORG1 0x0200
79 #define PCC_ENRG1 0x0100
80 #define PCC_XHWID 0x0080
81 #define PCC_XHCL1 0x0040
82 #define PCC_XHCLP 0x0020
83 #define PCC_XHAIR 0x0010
84 #define PCC_FOPB 0x0008
85 #define PCC_ENPB 0x0004
86 #define PCC_FOPA 0x0002
87 #define PCC_ENPA 0x0001
90 * Magic offset for cursor X & Y locations.
92 #define PCC_X_OFFSET 212
93 #define PCC_Y_OFFSET 34
96 * Defines for the BrookTree bt478 VDAC.
98 typedef volatile struct VDACRegs {
99 u_char mapWA; /* address register (color map write) */
100 char pad1[3];
101 u_char map; /* color map */
102 char pad2[3];
103 u_char mask; /* pixel read mask */
104 char pad3[3];
105 u_char mapRA; /* address register (color map read) */
106 char pad4[3];
107 u_char overWA; /* address register (overlay map write) */
108 char pad5[3];
109 u_char over; /* overlay map */
110 char pad6[7];
111 u_char overRA; /* address register (overlay map read) */
112 } VDACRegs;
114 #endif /* !_PMREG_H_ */