1 /* BEGIN INCLUDE FILE ... config_chnl_card.incl.pl1 ... 11/27/80 W. Olin Sibert */
 2 
 3 dcl  chnl_cardp ptr;                                        /* Pointer to a CHNL card. */
 4 
 5 dcl 1 chnl_card based (chnl_cardp) aligned,                 /* CHNL card declaration */
 6     2 word char (4),                                        /* "chnl" */
 7     2 name char (4),                                        /* subsystem name */
 8     2 group (3),                                            /* Channel groups for this subsystem -- 9 fields total */
 9       3 iom fixed bin (3),                                  /* IOM number */
10       3 chan fixed bin (8),                                 /* channel number */
11       3 nchan fixed bin,                                    /* number of channels */
12 
13     2 pad (4) bit (36) aligned,                             /* pad to 15 fields */
14 
15     2 type_word aligned,
16       3 field_type (14) bit (2) unaligned,                  /* type of each field; see config_deck.incl.pl1 */
17       3 pad1 bit (4) unaligned,
18       3 n_fields fixed bin (4) unsigned unaligned;          /* number of fields used on card */
19 
20 dcl 1 chnl_card_array aligned based (chnl_cardp),           /* Overlay for channel group array */
21     2 pad1 (2) bit (36) aligned,
22     2 group (min (3, divide (max (0, (chnl_card.n_fields - 1)), 3, 17, 0))),
23       3 iom fixed bin (3),                                  /* IOM number */
24       3 chan fixed bin (8),                                 /* Channel number. */
25       3 nchan fixed bin;                                    /* Number of logical channels on this channel. */
26 
27 dcl  CHNL_CARD_WORD char (4) aligned internal static options (constant) init ("chnl");
28 
29 /* END INCLUDE FILE ... config_chnl_card.incl.pl1 */