|
|
1.1 root 1: /* $Header: pqd.h,v 10.1 86/11/19 10:46:07 jg Exp $ */
2: /* pqd.h - Definition and macros required to access PQD
3: *
4: * Defines required to support PQD
5: *
6: * Author:
7: * Scott Bates
8: * Brown University
9: * IRIS, Box 1946
10: * Providence, RI 02912
11: *
12: *
13: * Copyright (c) 1986 Brown University
14: *
15: * Permission to use, copy, modify and distribute this software and its
16: * documentation for any purpose and without fee is hereby granted, provided
17: * that the above copyright notice appear in all copies, and that both
18: * that copyright notice and this permission notice appear in supporting
19: * documentation, and that the name of Brown University not be used in
20: * advertising or publicity pertaining to distribution of the software
21: * without specific, written prior permission. Brown University makes no
22: * representations about the suitability of this software for any purpose.
23: * It is provided "as-is" without express or implied warranty.
24: */
25:
26: #define SCREEN_BASE 0xF40C0000 /* base address of frame buffer */
27: #define XDEV_ID XDEV_IBMPQD /* device id for info structure */
28:
29: #define REAL_SCREEN_WIDTH 1024 /* number of bits/line for pqd */
30: #define REAL_SCREEN_HEIGHT 1024 /* Number of lines on pqd */
31:
32: #define X_SCREEN_WIDTH 1024 /* visible bits/line for pqd */
33: #define X_SCREEN_HEIGHT 800 /* visible lines on the screen */
34:
35: #define SCREEN_DEVICE "/dev/pqd" /* device name */
36: #define MOUSE_DEVICE "/dev/mspqd" /* device name of mouse for display */
37:
38: #define CURSOR_TYPE HARD_CURSOR /* pqd uses hardware cursor */
39:
40: #define DISPLAY_INIT() pqd_init() /* display initialization routine */
41:
42: #define PQD_IOADDR 0xF0000320 /* base address for controller regs */
43:
44: #define PQD_WM1 (PQD_IOADDR | 0x00000006)
45: #define PQD_WM0 (PQD_IOADDR | 0x00000008)
46: #define PQD_PCR (PQD_IOADDR | 0x0000000A)
47: #define PQD_VCR (PQD_IOADDR | 0x0000000C)
48: #define PQD_WCR (PQD_IOADDR | 0x0000000E)
49:
50: /*
51: * macros for controlling access to plane bitmaps
52: */
53:
54: #define SELECT_PLANE(n) *(unsigned short *)PQD_PCR = plane_no[n]
55:
56: #define SET_PLANE(RW) *(unsigned short *)PQD_PCR = RW
57:
58: #define RW_PLANE0 0x1000
59: #define RW_PLANE1 0x2100
60: #define RW_PLANE2 0x4200
61: #define RW_PLANE3 0x8300
62:
63: static unsigned short plane_no[] = {
64: RW_PLANE0,
65: RW_PLANE1,
66: RW_PLANE2,
67: RW_PLANE3
68: };
69:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.