1 
  2 
  3 /* STATIC DATA */
  4 
  5 dcl pr5_struct_ptr ptr static;
  6 
  7 dcl 1 pr5_struct static,
  8      2 pr5 fixed bin init(5),
  9      2 pointer_no bit(3),
 10      2 lock fixed bin init(0),
 11      2 switch fixed bin init(0),
 12      2 segno fixed bin init(0),
 13      2 offset fixed bin init(0),
 14      2 reset fixed bin;
 15 dcl 1 iocb_arg static,
 16      2 pt ptr init(null()),   /* initialized to address of basic structure */
 17      2 zeros bit(144) init(""b);
 18 dcl 1 cra_arg static,
 19      2 pt ptr init(null()),   /* initialized to address of basic structure */
 20      2 type fixed bin init(0),
 21      2 off1 fixed bin init(0),  /* not meaningful */
 22      2 off2 fixed bin init(42),
 23      2 bits bit(36) init("0000000000000000001000"b);  /* indirect */
 24 dcl 1 temp_arg static,
 25      2 pt ptr init(null()),   /* always null */
 26      2 type fixed bin init(3),
 27      2 zeros bit(108) init(""b);
 28 dcl 1 status_arg static,
 29      2 pt ptr init(null()),   /* always null */
 30      2 type fixed bin init(3),
 31      2 off1 fixed bin init(40),
 32      2 zeros bit(72) init(""b);
 33 dcl 1 fsb_arg static,
 34      2 pt ptr init(null()),   /* always null */
 35      2 type fixed bin init(3),
 36      2 off1 fixed bin,        /* set each time to wd offset in fsb */
 37      2 off2 fixed bin init(0),  /* not used */
 38      2 bits bit(36) init("0000000000000000000001001"b);     /* pr1 */
 39 
 40 dcl 1 pr1_struct static,
 41      2 pr1 fixed bin init(1),
 42      2 pointer_no bit(3),
 43      2 lock fixed bin init(1),
 44      2 switch fixed bin init(0),
 45      2 segno fixed bin,
 46      2 offset fixed bin,
 47      2 reset fixed bin;
 48 dcl 1 x1_struct static,
 49      2 x1 fixed bin init(11),
 50      2 reg_no bit(4),
 51      2 lock fixed bin init(0),
 52      2 already_there fixed bin,
 53      2 contains fixed bin init(0),
 54      2 null_ptr ptr init(null()),
 55      2 fill bit(18) unaligned init((18)"0"b),
 56      2 literal bit(18) unaligned;
 57 dcl 1 aq_struct static,
 58      2 aq fixed bin init(3),
 59      2 reg_no bit(4),
 60      2 lock fixed bin init(0),
 61      2 already_there fixed bin,
 62      2 contains fixed bin init(0),
 63      2 null_ptr ptr init(null()),
 64      2 fill bit(18) unaligned init((18)"0"b),
 65      2 literal bit(18) unaligned;
 66 
 67 dcl 1 cra_basic_struct static,
 68      2 type fixed bin init(1),
 69      2 operand_no fixed bin init(0),
 70      2 lock fixed bin init(0),
 71      2 seg fixed bin,
 72      2 off fixed bin,
 73      2 send_receive fixed bin init(0);
 74 dcl 1 iocb_basic_struct static,
 75      2 type fixed bin init(1),
 76      2 operand_no fixed bin init(0),
 77      2 lock fixed bin init(0),
 78      2 seg fixed bin,
 79      2 off fixed bin,
 80      2 send_receive fixed bin init(0);
 81 
 82 dcl 1 mpout static,
 83      2 n fixed bin init(4),
 84      2 pt1 ptr,
 85      2 pt2 ptr,
 86      2 pt3 ptr,
 87      2 pt4 ptr;
 88 
 89 dcl 1 alpha_type9 static,
 90      2 header (4) fixed bin init(112,0,0,9),
 91      2 repl_ptr (2) ptr init((2)null()),
 92      2 fill1  bit(108) init(""b),
 93      2 file_key_info,
 94           3 fb1 (3) fixed bin init(0,0,0),
 95           3 size fixed bin init(0),
 96           3 fb2 (2) fixed bin init(0,0),
 97           3 flags1 bit(36) init("010000100100000000010000000100000000"b),
 98           3 flags2 bit(36) init(""b),
 99           3 seg fixed bin init(0),
100           3 off fixed bin,
101      2 fill2 (7) fixed bin init(0,0,0,0,0,0,0);
102 dcl 1 trans_type9 static,
103      2 header (4) fixed bin init(112,0,0,9),
104      2 repl_ptr (2) ptr init((2)null()),
105      2 fill1  bit(108) init(""b),
106      2 file_key_info,
107           3 fb1 (3) fixed bin init(0,0,0),
108           3 size fixed bin init(0),
109           3 fb2 (2) fixed bin init(0,0),
110           3 flags1 bit(36) init("010000100100000000010000000100000000"b),
111           3 flags2 bit(36) init(""b),
112           3 seg fixed bin init(0),
113           3 off fixed bin,
114      2 fill2 (7) fixed bin init(0,0,0,0,0,0,0);
115 dcl 1 num_type9 static,
116      2 header (4) fixed bin init(112,0,0,9),
117      2 repl_ptr (2) ptr init((2)null()),
118      2 fill1  bit(108) init(""b),
119      2 file_key_info,
120           3 fb1 (3) fixed bin init(0,0,0),
121           3 size fixed bin init(0),
122           3 places_left fixed bin,
123           3 places_right fixed bin init(0),
124           3 flags1 bit(36) init("010000100100000001000000000100000000"b),
125           3 flags2 bit(36) init(""b),
126           3 seg fixed bin init(0),
127           3 off fixed bin,
128      2 fill2 (7) fixed bin init(0,0,0,0,0,0,0);
129 dcl 1 fkey_type9 static,
130      2 header (4) fixed bin init(112,0,0,9),
131      2 repl_ptr (2) ptr init((2)null()),
132      2 fill1  bit(108) init(""b),
133      2 file_key_info,
134           3 fb1 (3) fixed bin init(0,0,0),
135           3 size fixed bin init(0),
136           3 fb2 (2) fixed bin init(0,0),
137           3 flags1 bit(36) init(""b),
138           3 flags2 bit(36) init(""b),
139           3 seg fixed bin,
140           3 off fixed bin,
141      2 fill2 (7) fixed bin init(0,0,0,0,0,0,0);
142 dcl 1 type19 static,
143      2 size fixed bin init(38),
144      2 line fixed bin init(0),
145      2 column fixed bin init(0),
146      2 type fixed bin init(19),
147      2 verb fixed bin init(18),                   /* verb number */
148      2 e fixed bin init(1),
149      2 h fixed bin init(0),
150      2 i fixed bin init(0),
151      2 j fixed bin init(0),
152      2 a bit(3) init(""b),
153      2 b bit(1) init(""b),
154      2 c bit(1) init(""b),
155      2 d bit(2) init(""b),
156      2 f bit(2) init(""b),
157      2 g bit(2) init(""b),
158      2 k bit(5) init(""b);
159 
160 dcl 1 ioerror static,
161      2 cobol_code fixed bin,
162      2 retry_tag fixed bin,
163      2 is_tag fixed bin,
164      2 ns_tag fixed bin,
165      2 type1_ptr ptr,
166      2 mode fixed bin;
167 dcl opt_text (2) bit(36) static init(
168           "110000000000101110010011101001000000"b,          /* lda pr6|46       */
169           "000000000000000000110000001000000100"b);         /* tnz 0,ic         */
170 
171 dcl mcode_off fixed bin static init(40);
172 dcl fsb_keylen_sw fixed bin static init(24);      /* offset 6 */
173 dcl fsb_key fixed bin static init(28);            /* offset 7 */
174 dcl fsb_key_wdoff fixed bin static init(7);
175 dcl read_errno fixed bin static init(25);         /* Unable to read record */
176 dcl seek_errno fixed bin static init(26);         /* Unable to seek key for input */
177 dcl read_key_errno fixed bin static init(27);     /* Unable to read next key */
178 
179 
180 
181 /* BUILTIN FUNCTIONS */
182 
183 declare (substr,mod,binary,fixed,addr,addrel,rel,length,string,unspec,null,index) builtin;
184 
185 /* EXTERNAL ENTRY NAMES */
186 
187 dcl cobol_emit entry(ptr, ptr, fixed bin);
188 dcl cobol_make_tagref entry(fixed bin , fixed bin, ptr);
189 dcl cobol_ioop_util$lda_du entry(fixed bin);
190 dcl cobol_ioop_util$set_icode entry;
191 dcl cobol_set_pr entry (ptr, ptr);
192 dcl cobol_alloc$stack entry(fixed bin,fixed bin,fixed bin);
193 dcl cobol_read_ft entry(fixed bin,ptr);
194 dcl cobol_read_rand entry(fixed bin,char(5),ptr);
195 dcl cobol_define_tag entry(fixed bin);
196 
197 /* sub-generators */
198 dcl cobol_trans_alphabet$io entry(ptr,ptr, fixed bin, fixed bin);
199 dcl cobol_gen_ioerror entry(ptr, ptr);
200 dcl cobol_gen_ioerror$finish_up entry(ptr, ptr);
201 dcl cobol_reg_manager$after_op entry(fixed bin);
202 dcl cobol_call_op entry(fixed bin, fixed bin);
203 dcl cobol_call_op$skip entry(fixed bin,fixed bin,fixed bin);
204 dcl cobol_move_gen entry(ptr);
205 dcl cobol_set_fsbptr entry(ptr);
206 dcl cobol_io_util$key_loc entry(fixed bin,fixed bin);
207 dcl cobol_io_util$file_desc entry(fixed bin(24));
208 dcl cobol_io_util$key_num entry(fixed bin);
209 dcl cobol_io_util$fixed_add entry(bit(3) aligned,fixed bin,fixed bin,bit(3) aligned,fixed bin);
210 dcl cobol_io_util$move_from_varlen entry(bit(3) aligned,fixed bin,ptr,bit(3) aligned,fixed bin);
211 dcl cobol_io_util$bin_to_t9dec entry(bit(3) aligned,fixed bin,ptr);
212 dcl cobol_io_util$bin_to_dec entry(bit(3) aligned,fixed bin,fixed bin,bit(3) aligned,fixed bin,fixed bin);
213 dcl cobol_io_util$t9dec_to_bin entry(bit(3) aligned,fixed bin,ptr);
214 dcl cobol_io_util$move entry(bit(3) aligned,fixed bin,fixed bin,bit(3) aligned,fixed bin,fixed bin);
215 dcl cobol_io_util$move_direct entry(bit(3) aligned,fixed bin,fixed bin,fixed bin,bit(18) aligned);
216 dcl cobol_io_util$bypass_error entry(fixed bin,fixed bin);
217 dcl cobol_io_util$bypass_mode_error entry(fixed bin,bit(2) aligned);
218 dcl cobol_io_util$bypass_readkey entry(fixed bin);
219 dcl cobol_open_util$check_open entry(ptr,fixed bin,ptr);
220 
221 
222 %include cobol_file_table;
223 %include cobol_file_key;
224 %include cobol_type1;
225 %include cobol_type9;
226 %include cobol_type12;
227 %include cobol_type19;
228 %include cobol_;