|
|
1.1 root 1: /* qbus.h */
2:
3: /* Microvax II Q-bus mappiong constants */
4: /* UVAX II Reg Addrs. */
5: #define QMAP ((unsigned int *)0x20088000) /* qbus map regs. */
6: #define QMMECSR ((unsigned int *)0x20080004) /* mem error CSR */
7: #define QMIPCR ((unsigned short *)0x20001f40) /* cpu communic. reg */
8: #define QMCPMBX 0x200b801c /* console pgm mailbox */
9:
10: /* UVAXII bus map regs: */
11: #define QMNMREG 8192 /* # mapping registers */
12: #define QMENAB 0x20 /* enable bus mapping */
13: #define QMREGV 0x80000000 /* map register valid */
14: #define QMHALT 0x23 /* QMCPMBX value to */
15: /* halt the CPU */
16:
17: #ifndef ASM
18:
19: /* extract high 6 bits of 22-bit Q-bus address into low 6 bits*/
20: #define hiQ2low(x) (short)(((unsigned int)x>>(sizeof(short)*8)) & LOW6)
21:
22: /* move low 6 bits from short to high 6 bits of 22-bit Qbus address */
23: #define lowQ2hi(x) (((int)x & LOW6) << (sizeof(short)*8))
24:
25: #endif ASM
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.