xref: /original-bsd/sys/vax/uba/ikreg.h (revision 08eb28af)
1 /*
2  * Copyright (c) 1982, 1986 Regents of the University of California.
3  * All rights reserved.  The Berkeley software License Agreement
4  * specifies the terms and conditions for redistribution.
5  *
6  *	@(#)ikreg.h	7.2 (Berkeley) 12/22/87
7  */
8 
9 struct ikdevice {
10 	short	ik_wc;			/* Unibus word count reg */
11 	u_short	ik_ubaddr;		/* Unibus address register */
12 	u_short	ik_ustat;		/* Unibus status/command reg */
13 	u_short	ik_data;		/* Data register */
14 	u_short	ik_xaddr;		/* X address in frame buffer */
15 	u_short	ik_yaddr;		/* Y address in frame buffer */
16 	u_short	ik_istat;		/* Ikonas status/command reg */
17 	u_short	ik_chan;		/* Channel control register */
18 };
19 
20 #define IK_GETADDR 	IKIOGETADDR
21 #define IK_WAITINT 	IKIOWAITINT
22 #define	IKIOGETADDR	_IOR('i', 0, caddr_t)	/* get Unibus device address */
23 #define	IKIOWAITINT	_IO('i', 1)		/* await device interrupt */
24 
25 /*
26  * Unibus status/command register bits
27  */
28 
29 #define IK_GO		01
30 #define IK_IENABLE	0100
31 #define IK_READY	0200
32 #define IK_IKONAS_INTR	0100000
33 
34 /*
35  * Ikonas status/command register bits
36  */
37 
38 #define WORD32		0
39 #define RES512		2
40 #define RES1024		3
41 #define READ_SELECT	0
42 #define WRITE_MASK	010
43 #define WRITE_SELECT	020
44 #define HALFWORD	040
45 #define DMAENABLE	0100
46 #define INVISIBLE_IO	0200
47 #define AUTOINCREMENT	0400
48 #define RUN_PROCESSOR	01000
49 #define CLEAR		02000
50 #define BYTE_MODE	04000
51 #define FRAME_ENABLE	010000
52 #define PROC_ENABLE	020000
53 #define RED_SELECT	0
54 #define GREEN_SELECT	040000
55 #define BLUE_SELECT	0100000
56 #define ALPHA_SELECT	0140000
57 
58 /*
59  * Frame buffer controller
60  */
61 
62 #define FBC0		060000000
63 #define FBC1		062000000
64 
65 #define VIEWPORT_LOC	0
66 #define VIEWPORT_SIZE	1
67 #define WINDOW_LOC	2
68 #define ZOOM		3
69 #define DISPLAY_RATE	4
70 #define VIDEO_CONTROL	5
71 #define		FORMAT_CONTROL_MASK	03
72 #define		CURSOR_ON		04
73 #define		LOW_RESOL		0
74 #define		HIGH_RESOL		010
75 #define		AUTO_CLEAR		040
76 #define		EXT_SYNC		0100
77 #define		COLOR_MAP_PAGES		0600
78 #define		HIGH_RESOL_SYNC		01000
79 #define		REPEAT_FIELD		02000
80 #define		PIXEL_CLOCK_RATE_MASK	077
81 #define CURSOR_LOC	6
82 #define CURSOR_SHADE	7
83 
84 #define CURSOR_MAP	0400
85 
86 /*
87  * Color map lookup table
88  */
89 
90 #define CMAP0		040600000
91 #define CMAP1		040610000
92 
93 #define CHAN_SELECT	02000
94 
95 /*
96  * Frame buffer memories
97  */
98 
99 #define MEM0		000000000
100 #define MEM1		004000000
101 
102 /*
103  * Bit-slice processor
104  */
105 
106 #define UMEM		040000000
107 #define SCRPAD		040400000
108 #define PROC		041200000
109 
110 /*
111  * Frame grabber
112  */
113 
114 #define FMG0		060200000
115