1 /*  START OF:       dfm_data.incl.pl1               *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  * */
  2 
  3 
  4 /****^  HISTORY COMMENTS:
  5   1) change(86-08-21,Fakoury), approve(86-08-21,MCR7515),
  6      audit(87-01-07,Farley), install(87-01-08,MR12.0-1263):
  7      Originally coded 0782 dfm_data.by Rick Fakoury for MR12.
  8   2) change(88-06-10,Fakoury), approve(90-10-03,MCR8147),
  9      audit(90-10-03,Parisek), install(90-10-25,MR12.4-1049):
 10      Modified to add new diskettes to valid diskettes.
 11   3) change(89-02-06,Fakoury), approve(90-10-03,MCR8147),
 12      audit(90-10-03,Parisek), install(90-10-25,MR12.4-1049):
 13      to to increase the size of att_desc from 64 to 181 for TR21336.
 14                                                    END HISTORY COMMENTS */
 15 
 16 
 17 /* format: style4,ifthenstmt,ifthen,ind3,ll125,lineconind1 */
 18 
 19 
 20 
 21 dcl  dfm_datap ptr;
 22 
 23 dcl  1 dfm_data based (dfm_datap),
 24        2 allow_0_cksum bit (1),
 25        2 ascii_card char (80) aligned,
 26        2 attach_copy bit (1),
 27        2 bf_sw bit (1),                                     /* flag to suppress informative messages */
 28        2 bptr ptr,                                          /* data buffer ptr */
 29        2 catp ptr,                                          /* catalog ptr */
 30        2 cat_build bit (1),
 31        2 cat_key char (24),                                 /* catalog key */
 32        2 cd_sw bit (1),                                     /* user set copy tape density */
 33        2 cfile fixed bin,                                   /* copy file number */
 34        2 ciocb_ptr ptr,                                     /* copy iocb ptr */
 35        2 cksp ptr,                                          /* cata key string ptr */
 36        2 copy_at_eof bit (1),                               /* copy tape at eot */
 37        2 cptr ptr,                                          /* card ptr */
 38        2 crec fixed bin,                                    /* record number */
 39        2 current_disk_name char (8),
 40        2 current_filename char (20) varying,
 41        2 current_key char (24) varying,
 42        2 dcatp ptr,                                         /* diskette catalog ptr */
 43        2 dd bit (1),                                        /* delete deck flag */
 44        2 deckfile_sw bit (1),
 45        2 denno fixed bin,                                   /* tape density number */
 46        2 dfkp ptr,
 47        2 dkf_iocbp (3) ptr,
 48        2 dir char (168),
 49        2 disk_num fixed bin,
 50        2 dksp ptr,                                          /* diskette key string ptr */
 51        2 dlen fixed bin (21),                               /* data move length */
 52        2 dtype char (4),                                    /* deck type */
 53        2 edit_date char (6),
 54        2 eot bit (1),                                       /* end of tape flag */
 55        2 entry char (32),
 56        2 fiocb_ptr ptr,                                     /* deck file iocb ptr */
 57        2 finished bit (1),                                  /* request active */
 58        2 firmware_sw bit (1),                               /* just loading firmware */
 59        2 first_deck bit (1),
 60        2 first_write bit (1),
 61        2 fnp_key fixed bin,
 62        2 fnp_tape bit (1),
 63        2 fnp_type char (4),
 64        2 gtime_string char (6),                             /* GCOS time format */
 65        2 hbuff_p ptr,                                       /* pointer to a header buffer */
 66        2 hdr_sw bit (1),                                    /* listing header required */
 67        2 hpatches (10) like h_patch aligned,                /* hex patches */
 68        2 id_buf char (18) aligned,                          /* buffer to hold current ident block image */
 69        2 infop ptr,                                         /* backward ptr to dfm_info structure */
 70        2 l_att_desc char (181),                             /* listing file attach description */
 71        2 lbuff_p ptr,                                       /* ptr to a line buffer */
 72        2 lcatp ptr,                                         /* listing catalog ptr */
 73        2 lksp ptr,                                          /* listing key string pointer */
 74        2 lfd bit (1),                                       /* load from diskette flag */
 75        2 lft bit (1),                                       /* load from tape flag */
 76        2 lib bit (1),                                       /* mpc library */
 77        2 lib_type char (6),
 78        2 liocb_ptr ptr,                                     /* listing iocb ptr */
 79        2 list bit (1),                                      /* creating a listing */
 80        2 list_key char (24) varying,
 81        2 ls_type char (10) varying,                         /* list type fnp, ifad, mca */
 82        2 m_attached bit (1),                                /* mca attached */
 83        2 mca_ioi_idx fixed bin,
 84        2 mca_wksp ptr,                                      /* ptr to the mca workspace */
 85        2 mcatp ptr,                                         /* mca catalog ptr */
 86        2 mdf bit (1),                                       /* merge deckfile request active */
 87        2 mksp ptr,                                          /* mca key string ptr */
 88        2 obj_card char (80) aligned,                        /* buffer to hold current object card image */
 89        2 of_iocbp ptr,                                      /* deckfile iocb ptr for merge deckfile */
 90        2 one_eof bit (1),
 91        2 opatches (10) like o_patch aligned,                /* octal patches */
 92        2 page_no fixed bin,
 93        2 pd bit (1),                                        /* patch deck active */
 94        2 pfile fixed bin,                                   /* file number */
 95        2 sci_ptr ptr,                                       /* save here for use by the utilities */
 96        2 sstype char (5),                                   /* subsytem type */
 97        2 statp ptr,                                         /* status ptr */
 98        2 sub_ptr ptr,                                       /* substatus ptr */
 99        2 t_att_desc char (181),                             /* tape attach description */
100        2 tape_name char (16),
101        2 terminal_out bit (1),                              /* output listing on terminal */
102        2 tiocb_ptr ptr,                                     /* tape iocb ptr */
103        2 time_string char (24);                             /* Current date and time */
104 
105 %page;
106 
107 /* CONSTANTS */
108 
109 dcl  cata_list_type fixed bin (2) int static options (constant) init (2);
110 
111 dcl  data_list_type fixed bin (2) int static options (constant) init (1);
112 
113 dcl  lc char (26) int static options (constant) init
114       ("abcdefghijklmnopqrstuvwxyz");
115 
116 dcl  list_types (3) char (17) int static options (constant) init
117       ("ls.cata.fnp.list", "ls.cata.ifad.list", "ls.cata.mca.list");
118 
119 dcl  max_words_to_rd fixed bin (21) int static options (constant) init (16 * 1024);
120 dcl  uc char (26) int static options (constant) init
121       ("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
122 
123 dcl  valid_diskettes (14) char (5) static options (constant) init
124       ("con..", "fip..", "hsh..", "idpm.", "imu..", "mhlp.", "ndi..",
125            "psa..", "psi..", "pt1..", "pt2..", "sel..", "urd..", "urp..");
126 
127 
128 /* STRUCTURES and BASED VARIABLES */
129 
130 dcl  1 cata based (dfm_data.catp) aligned,                  /* template for itr or mdr catalog */
131        2 n_entries fixed bin,                               /* number of catalog entries */
132        2 key (1 refer (cata.n_entries)) char (24);          /* entry search keys */
133 
134 dcl  1 dcata based (dfm_data.dcatp) aligned,                /* template for a diskette catalog */
135        2 n_entries fixed bin,                               /* number of catalog entries */
136        2 key (1 refer (dcata.n_entries)) char (24);         /* entry search keys */
137 
138 dcl  hbuff (4) char (300) based (dfm_data.hbuff_p);
139 
140 dcl  lbuff char (300) based (dfm_data.lbuff_p);
141 
142 
143 
144 dcl  1 lcata based (dfm_data.lcatp) aligned,                /* template for a list catalog */
145        2 n_entries fixed bin,                               /* number of catalog entries */
146        2 key (1 refer (lcata.n_entries)) char (24);         /* entry search keys */
147 
148 dcl  1 mcata based (dfm_data.mcatp) aligned,                /* template for a MCA catalog */
149        2 n_entries fixed bin,                               /* number of catalog entries */
150        2 key (1 refer (mcata.n_entries)) char (24);         /* entry search keys */
151 
152 dcl  cata_key_string char (cata.n_entries * 24) based (dfm_data.cksp);
153 
154 dcl  dcata_key_string char (dcata.n_entries * 24) based (dfm_data.dksp);
155 
156 dcl  lcata_key_string char (lcata.n_entries * 24) based (dfm_data.lksp);
157 
158 dcl  mcata_key_string char (mcata.n_entries * 24) based (dfm_data.mksp);
159 
160 dcl  ascii_cardp ptr;
161 
162 dcl  1 h_patch based (ascii_cardp) aligned,                 /* template for hex patch card */
163        (2 add char (4),                                     /* (c1) hex patch address */
164        2 blk1 char (2),
165        2 type char (4),                                     /* (c7) = "c" for cs, "r" for r/w mem  hex */
166        2 blk2 char (5),
167        2 inst char (4),                                     /* (c16) 2 - 4 hex digit instructions */
168        2 blk3 char (23),
169        2 prg_id char (12),                                  /* (c43) should equal word 2 of deck id block */
170        2 blk4 char (5),
171        2 dtime char (6),                                    /* (c60) date time of patch */
172        2 blk5 char (1),
173        2 rev char (6),                                      /* (c67) revision of dkend */
174        2 lbl char (4),                                      /* (c73) = deck edit name */
175        2 blk6 char (4)) unaligned;                          /*  complete card format */
176 
177 dcl  1 id_blk based (addr (dfm_data.id_buf)) aligned,       /* template for ident block */
178          (2 ident char (6),                                 /* module identification */
179        2 revision,
180          3 rev_dot char (4),                                /* char string "rev." */
181          3 rev char (2),                                    /* alpa-numeric revision */
182        2 type_code,
183          3 pad char (3),
184          3 type char (3)) unaligned;                        /* module type (itr, mdr or firmware) */
185 
186 dcl  1 mca_status based (dfm_data.statp),
187        2 pad bit (2) unal,
188        2 maj bit (4) unal,
189        2 sub bit (4) unal,
190        2 pad2 bit (62) unal;
191 
192 dcl  1 mca_sub based (dfm_data.sub_ptr) unal,
193        2 data_p bit (1) unal,
194        2 mbz bit (3) unal,
195        2 term_state bit (2) unal;
196 
197 dcl  1 o_patch based (ascii_cardp) aligned,                 /* template for octal patch card */
198        (2 add char (6),                                     /* (c1) patch address */
199        2 blk1 char (1),
200        2 type char (5),                                     /* (c8) = "octal" | "mask " */
201        2 blk2 char (3),
202        2 p_fld char (51),                                   /* (c16) variable fieled (patch data) */
203        2 dtime char (6),                                    /* (c67) date of patch */
204        2 label char (6),                                    /* (c73) dk label */
205        2 blk3 char (2)) unaligned;                          /* to finish off card */
206 
207 
208 %page;
209 %include rs_info;
210 
211 
212 /*  END OF:         dfm_data.incl.pl1               *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  * */