-
Notifications
You must be signed in to change notification settings - Fork 0
/
bce_error.list
248 lines (223 loc) · 15.3 KB
/
bce_error.list
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
COMPILATION LISTING OF SEGMENT bce_error
Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989
Compiled at: Bull HN, Phoenix AZ, System-M
Compiled on: 11/11/89 1015.1 mst Sat
Options: optimize map
1 /****^ ***********************************************************
2* * *
3* * Copyright, (C) Honeywell Bull Inc., 1987 *
4* * *
5* * Copyright, (C) Honeywell Information Systems Inc., 1984 *
6* * *
7* *********************************************************** */
8 /* BCE_ERROR -- com_err_ replacement for bootload environment */
9 /* BIM '82 */
10 /* Modified by Keith Loepere in 8/83 for new bce switches */
11 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */
12
13 bce_error:
14 procedure (Code) /* options (variable) */;
15
16 declare Code fixed bin (35) parameter;
17 declare Me char (*) parameter;
18
19 declare 1 error_code aligned,
20 2 pad_segno bit (18) unaligned, /* for now, assume error_table_ */
21 2 error_table_offset fixed bin (18) uns unal;
22 declare picture_code pic "------------9";
23
24 declare etep pointer;
25
26 declare 1 error_table_entry aligned based (etep),
27 2 length fixed bin (9) unsigned unaligned,
28 2 message character (0 refer (error_table_entry.length)) unaligned;
29
30 declare length builtin;
31 declare pointer builtin;
32 declare unspec builtin;
33
34 declare n_args fixed bin;
35 declare message_buffer char (512);
36 declare work_buffer char (work_buffer_len) based (work_buffer_ptr);
37 declare work_buffer_len fixed bin;
38 declare work_buffer_ptr ptr;
39 declare string_len fixed bin (21);
40 declare tcode fixed bin (35);
41
42 declare first_ioa_arg fixed bin;
43
44 declare arg_list_ptr_ entry () returns (pointer);
45 declare cu_$arg_count entry (fixed bin, fixed bin (35));
46 declare ioa_$general_rs entry (ptr, fixed bin, fixed bin, char (*), fixed bin (21), bit (1) aligned,
47 bit (1) aligned);
48 declare bce_data$error_put_chars
49 entry (ptr, ptr, fixed bin, fixed bin (35)) external variable;
50 declare error_table_$ bit (36) aligned external static;
51
52 work_buffer_ptr = addr (message_buffer);
53 work_buffer_len = length (message_buffer);
54 first_ioa_arg = 2;
55 goto join;
56
57 com_err:
58 entry (Code, Me); /* options (variable); for com_err_ support */
59 work_buffer_ptr = addr (message_buffer);
60 work_buffer_len = length (message_buffer);
61 string_len = length (rtrim (Me));
62 substr (work_buffer, 1, string_len) = substr (Me, 1, string_len);
63 substr (work_buffer, string_len + 1, 2) = ": ";
64 work_buffer_ptr = addcharno (work_buffer_ptr, string_len + 2);
65 work_buffer_len = work_buffer_len - (string_len + 2);
66 first_ioa_arg = 3;
67
68 join:
69 if Code ^= 0
70 then do;
71 unspec (error_code) = unspec (Code);
72 if error_code.pad_segno ^= "077777"b3
73 then do;
74 substr (work_buffer, 1, 5) = "Code ";
75 picture_code = Code;
76 string_len = length (ltrim (picture_code));
77 substr (work_buffer, 6, string_len) =
78 substr (picture_code, length (picture_code) - string_len + 1, string_len);
79 work_buffer_ptr = addcharno (work_buffer_ptr, 5 + string_len);
80 work_buffer_len = work_buffer_len - (5 + string_len);
81 end;
82 else do;
83 etep = pointer (addr (error_table_$), error_code.error_table_offset);
84 substr (work_buffer, 1, error_table_entry.length) = error_table_entry.message;
85 work_buffer_ptr = addcharno (work_buffer_ptr, error_table_entry.length);
86 work_buffer_len = work_buffer_len - (error_table_entry.length);
87 end;
88 substr (work_buffer, 1, 1) = " ";
89 work_buffer_ptr = addcharno (work_buffer_ptr, 1);
90 work_buffer_len = work_buffer_len - 1;
91 end;
92 call cu_$arg_count (n_args, tcode);
93 if n_args >= first_ioa_arg
94 then do;
95 call ioa_$general_rs (arg_list_ptr_ (), first_ioa_arg, first_ioa_arg + 1, work_buffer, string_len, "0"b, "0"b);
96 work_buffer_ptr = addcharno (work_buffer_ptr, string_len);
97 work_buffer_len = work_buffer_len - string_len;
98 end;
99 substr (work_buffer, 1, 1) = "
100 ";
101 work_buffer_ptr = addcharno (work_buffer_ptr, 1);
102 work_buffer_len = work_buffer_len - 1;
103
104 work_buffer_ptr = addr (message_buffer);
105 work_buffer_len = length (message_buffer) - work_buffer_len;
106 call bce_data$error_put_chars (addr (bce_data$error_put_chars), addr (work_buffer), length (work_buffer), (0));
107 return;
108 end bce_error;
SOURCE FILES USED IN THIS COMPILATION.
LINE NUMBER DATE MODIFIED NAME PATHNAME
0 11/11/89 0839.1 bce_error.pl1 >special_ldd>install>MR12.3-1114>bce_error.pl1
NAMES DECLARED IN THIS COMPILATION.
IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES
(* indicates a set context)
NAMES DECLARED BY DECLARE STATEMENT.
Code parameter fixed bin(35,0) dcl 16 ref 13 57 68 71 75
Me parameter char packed unaligned dcl 17 ref 57 61 62
arg_list_ptr_ 000010 constant entry external dcl 44 ref 95 95
bce_data$error_put_chars 000016 external static entry variable dcl 48 set ref 106 106 106
cu_$arg_count 000012 constant entry external dcl 45 ref 92
error_code 000100 automatic structure level 1 dcl 19 set ref 71*
error_table_$ 000020 external static bit(36) dcl 50 set ref 83
error_table_entry based structure level 1 dcl 26
error_table_offset 0(18) 000100 automatic fixed bin(18,0) level 2 packed packed unsigned unaligned dcl 19 set
ref 83
etep 000106 automatic pointer dcl 24 set ref 83* 84 84 85 86
first_ioa_arg 000316 automatic fixed bin(17,0) dcl 42 set ref 54* 66* 93 95* 95
ioa_$general_rs 000014 constant entry external dcl 46 ref 95
length builtin function dcl 30 in procedure "bce_error" ref 53 60 61 76 77
105 106 106
length based fixed bin(9,0) level 2 in structure "error_table_entry" packed
packed unsigned unaligned dcl 26 in procedure
"bce_error" ref 84 84 85 86
message 0(09) based char level 2 packed packed unaligned dcl 26 ref 84
message_buffer 000111 automatic char(512) packed unaligned dcl 35 set ref 52 53 59 60 104 105
n_args 000110 automatic fixed bin(17,0) dcl 34 set ref 92* 93
pad_segno 000100 automatic bit(18) level 2 packed packed unaligned dcl 19 set ref 72
picture_code 000101 automatic picture(13) packed unaligned dcl 22 set ref 75* 76 77 77
pointer builtin function dcl 31 ref 83
string_len 000314 automatic fixed bin(21,0) dcl 39 set ref 61* 62 62 63 64 65 76* 77 77 77 79 80
95* 96 97
tcode 000315 automatic fixed bin(35,0) dcl 40 set ref 92*
unspec builtin function dcl 32 set ref 71* 71
work_buffer based char packed unaligned dcl 36 set ref 62* 63* 74* 77* 84*
88* 95* 99* 106 106 106 106
work_buffer_len 000311 automatic fixed bin(17,0) dcl 37 set ref 53* 60* 62 63 65* 65 74 77 80* 80 84
86* 86 88 90* 90 95 95 97* 97 99 102* 102 105* 105
106 106 106 106
work_buffer_ptr 000312 automatic pointer dcl 38 set ref 52* 59* 62 63 64* 64 74 77 79* 79 84
85* 85 88 89* 89 95 96* 96 99 101* 101 104* 106
106 106 106
NAMES DECLARED BY EXPLICIT CONTEXT.
bce_error 000015 constant entry external dcl 13
com_err 000035 constant entry external dcl 57
join 000107 constant label dcl 68 ref 55
NAMES DECLARED BY CONTEXT OR IMPLICATION.
addcharno builtin function ref 64 79 85 89 96 101
addr builtin function ref 52 59 83 104 106 106 106 106
ltrim builtin function ref 76
rtrim builtin function ref 61
substr builtin function set ref 62 62 63* 74* 77* 77 84* 88* 99*
STORAGE REQUIREMENTS FOR THIS PROGRAM.
Object Text Link Symbol Defs Static
Start 0 0 464 506 363 474
Length 664 363 22 141 100 0
BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME
bce_error 260 external procedure is an external procedure.
STORAGE FOR AUTOMATIC VARIABLES.
STACK FRAME LOC IDENTIFIER BLOCK NAME
bce_error 000100 error_code bce_error
000101 picture_code bce_error
000106 etep bce_error
000110 n_args bce_error
000111 message_buffer bce_error
000311 work_buffer_len bce_error
000312 work_buffer_ptr bce_error
000314 string_len bce_error
000315 tcode bce_error
000316 first_ioa_arg bce_error
THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM.
call_ent_var call_ext_out_desc call_ext_out return_mac ext_entry ext_entry_desc
THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM.
arg_list_ptr_ cu_$arg_count ioa_$general_rs
THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM.
bce_data$error_put_chars error_table_$
LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC
13 000012 52 000022 53 000024 54 000026 55 000030 57 000031 59 000050
60 000052 61 000054 62 000071 63 000074 64 000077 65 000102 66 000105
68 000107 71 000112 72 000114 74 000120 75 000123 76 000133 77 000145
79 000153 80 000157 81 000162 83 000163 84 000172 85 000177 86 000201
87 000204 88 000205 89 000210 90 000213 92 000215 93 000226 95 000231
96 000310 97 000314 99 000316 101 000322 102 000325 104 000327 105 000331
106 000333 107 000357
-----------------------------------------------------------
Historical Background
This edition of the Multics software materials and documentation is provided and donated
to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc.
as a contribution to computer science knowledge.
This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology,
Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL
and BULL HN Information Systems Inc. to the development of this operating system.
Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970),
renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership
of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture
for managing computer hardware properly and for executing programs. Many subsequent operating systems
incorporated Multics principles.
Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc.,
as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. .
-----------------------------------------------------------
Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without
fee is hereby granted,provided that the below copyright notice and historical background appear in all copies
and that both the copyright notice and historical background and this permission notice appear in supporting
documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining
to distribution of the programs without specific prior written permission.
Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc.
Copyright 2006 by BULL HN Information Systems Inc.
Copyright 2006 by Bull SAS
All Rights Reserved