1: struct rfdevice {
2: short rfdcs; /* disk control status register */
3: short rfwc; /* word count register */
4: char *rfcma; /* current memory address register */
5: short rfdar; /* disk address register */
6: short rfdae; /* disk address ext. and error register */
7: short rfdbr; /* disk data buffer register */
8: short rfmar; /* maintenance register */
9: short rfads; /* address of disk segment register */
10: };
11:
12: /* bits in rfcs */
13: #define RF_ERR 0100000 /* error */
14: #define RF_FRZ 0040000 /* freeze */
15: #define RF_WCE 0020000 /* write check error */
16: #define RF_DPE 0010000 /* data parity error */
17: #define RF_NED 0004000 /* nonexistent drive */
18: #define RF_WLO 0002000 /* write lockout */
19: #define RF_MXF 0001000 /* missed transfer */
20: #define RF_CTLCLR 0000400 /* disk control init */
21: #define RF_RDY 0000200 /* controller ready */
22: #define RF_IENABLE 0000100
23: /* bits 5 and 4 are the memory extension bits */
24: #define RF_MA 0000010 /* maintenance mode */
25: /* bits 2 and 1 are the function */
26: #define RF_GO 0000001 /* go */
27:
28: /* function codes */
29: #define RF_WCHK 0000006 /* write check */
30: #define RF_RCOM 0000004 /* read */
31: #define RF_WCOM 0000002 /* write */
32: #define RF_NOP 0000000 /* no op */
33:
34: #define RF_BITS \
35: "\10\20ERR\17FRZ\16WCE\15DPE\14NED\13WLO\12MXF\11CTLCLR\10RDY\7IENABLE\4MA\1GO"
36:
37: /* bits in rfdae */
38: #define RFDAE_APE 0100000 /* address parity error */
39: #define RFDAE_ATER 0040000 /* A timing track error */
40: #define RFDAE_BTER 0020000 /* B timing track error */
41: #define RFDAE_CTER 0010000 /* C timing track error */
42: /* bit 11 is unused */
43: #define RFDAE_NEM 0002000 /* nonexistent memory */
44: /* bit 9 is unused */
45: #define RFDAE_CMA_INH 0000400 /* memory address inhibit */
46: #define RFDAE_DRL 0000200 /* data request late */
47: /* bit 6 is unused */
48: #define RFDAE_DA14 0000040 /* disk address -010 */
49: /* bits 4-2 are the disk address */
50: /* bits 1-0 are the track address */
51: #define RFDAE_BITS \
52: "\10\20APE\17ATER\16BTER\15CTER\13NEM\11CMA_INH\10DRL\6DA14"
53:
54: /* bits in rmar */
55: /* bits 15-13 are unused */
56: #define RFMAR_MDT 0010000 /* maintenance data */
57: #define RFMAR_MCT 0004000 /* maintenance C timing */
58: #define RFMAR_MBT 0002000 /* maintenance B timing */
59: #define RFMAR_MAT 0001000 /* maintenance A timing */
60: /* bits 7-6 are data track maintenance */
61: /* bits 5-4 are C timing maintenance */
62: /* bits 3-2 are B timing maintenance */
63: /* bits 1-0 are A timing maintenance */
64: #define RFMAR_BITS "\10\15MDT\14MCT\13MBT\12MAT"
Defined struct's
Defined macros
RF_GO
defined in line
26; used 2 times
RF_MA
defined in line
24;
never used
Usage of this include