|
|
1.1 root 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.1 (Berkeley) 6/5/86
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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.