COMPILATION LISTING OF SEGMENT spooling_dim_order_ Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 02/02/88 1647.4 mst Tue Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* * Copyright (c) 1972 by Massachusetts Institute of * 6* * Technology and Honeywell Information Systems, Inc. * 7* * * 8* *********************************************************** */ 9 10 11 spooling_dim_order_: proc (a_sdbp, request, orderp, status); 12 13 /* SPOOLING_DIM_ORDER_ -- handles spooling DIM order calls. 14* 0) Created 12/5/75 by Janice B. Phillipps 15* 1) Updated 7/21/75 by J.Phillipps for label processing of new printer dim. 16* 2) Modified 1/31/78 by J. C. Whitmore to merge spool dim and printer dim order procs. 17**/ 18 19 1 1 1 2 /* BEGIN INCLUDE FILE ... status.incl.pl1 */ 1 3 /* Overlay for ios status string. Created 11/4/74 by J. Phillipps */ 1 4 1 5 dcl 1 stat based (addr (status)) aligned, 1 6 2 fbpart fixed bin (35), /* error_table_ entry overlay */ 1 7 2 ios, 1 8 (3 pad1 bit (4), 1 9 3 bit41_trans_term bit (1), /* bit 41 -- transaction terminated */ 1 10 3 pad2 bit (10), 1 11 3 bit52_ion_detached bit (1), /* bit 52 -- ioname detached */ 1 12 2 pad3 bit (20)) unaligned; 1 13 1 14 /* END INCLUDE FILE ... status.incl.pl1 */ 20 2 1 /* BEGIN INCLUDE FILE ... prt_sdb.incl.pl1 */ 2 2 /* Note: there is a corresponding prt_sdb.incl.alm */ 2 3 2 4 /* Created 10/28/74 by Noel I. Morris */ 2 5 /* Modified 3/15/77 by Noel I. Morris */ 2 6 /* Modified 1/25/78 by J. C. Whitmore to merge prtdim and spooling_dim versions */ 2 7 /* Modified: 27 November 1981 by G. Palter to add reload_vfc_train_after_special flag */ 2 8 /* Modified: 16 August 1983 by E. N. Kittlitz for new printer dim */ 2 9 2 10 dcl sdb_ptr ptr; /* pointer to stream data block */ 2 11 2 12 dcl 1 sdb aligned based (sdb_ptr), /* printer stream data block */ 2 13 2 outer_module_name char (32) aligned, 2 14 2 device_name_list_ptr pointer, 2 15 2 device_name, 2 16 3 next_device_ptr pointer, 2 17 3 name_size fixed bin (17), 2 18 3 name char (32) aligned, 2 19 2 ev_list aligned, /* Event list for ipc_ */ 2 20 3 count fixed bin (17), /* Event count = Always one */ 2 21 3 evchan fixed bin (71), /* Event channel name */ 2 22 2 stream_name char (32), /* stream name of this attachment */ 2 23 2 areap ptr, /* pointer to system free area */ 2 24 2 info like prt_info aligned, /* printer info */ 2 25 2 conv_info like pci aligned, /* conversion info */ 2 26 2 chars_printed fixed bin (35), /* input chars processed since "reset" */ 2 27 2 stop_every fixed bin, /* non-zero to stop after number of pages */ 2 28 2 stop_counter fixed bin, /* page stop counter */ 2 29 2 mode, /* additional modes */ 2 30 (3 single_page bit (1), /* "1"b to stop after each page */ 2 31 3 noprint bit (1), /* "1"b to suppress printing */ 2 32 3 pad bit (34)) unal, 2 33 2 rcp_id bit (36), /* RCP attachment ID */ 2 34 2 wsegp ptr, /* pointer to IOI working segment */ 2 35 2 running bit (1), /* "1"b if channel running */ 2 36 2 bgin fixed bin (18), /* index to oldest print line */ 2 37 2 stop fixed bin (18), /* index to next print line */ 2 38 2 prev fixed bin (18), /* index to previous print line */ 2 39 2 wait_flag bit (1) aligned, /* non-zero if waiting for special */ 2 40 2 marker_count fixed bin, /* counter for marker status insertion */ 2 41 2 paper_low bit (1) aligned, /* "1"b if paper low */ 2 42 2 error_count fixed bin, /* error counter */ 2 43 2 buffer_ptr ptr, /* pointer to output buffer (spooler) */ 2 44 2 spool_info (56) fixed bin, /* place to store spooling_info */ 2 45 2 reload_vfc_train_after_special bit (1) aligned, /* "1"b if VFC/train images should be reloaded after next 2 46* special interrupt */ 2 47 2 max_dcw_size fixed bin (12) uns unal, /* max wordcount of dcw */ 2 48 2 max_dcws fixed bin (6) uns unal, /* max dcws per idcw/buffer */ 2 49 2 n_dcws fixed bin (6) uns unal, /* current limit of dcws/buffer */ 2 50 2 b_begin fixed bin (3) uns unal, /* buffer index */ 2 51 2 b_stop fixed bin (3) uns unal, /* likewise */ 2 52 2 max_buffers fixed bin (3) uns unal, /* number of buffers allocated */ 2 53 2 n_buffers fixed bin (3) uns unal, /* number of buffers in use now */ 2 54 2 data_begin fixed bin (18) uns unal, /* first data word */ 2 55 2 data_end fixed bin (18) uns unal, /* size of working space in words */ 2 56 2 status_ptr ptr unal, /* ioi status area */ 2 57 2 flags aligned, 2 58 3 aborting bit (1) unal, /* next attempt to do i/o gets error and resets */ 2 59 3 eurc bit (1) unal, /* true if we know we are using EURC */ 2 60 3 flags_pad bit (16) unal, 2 61 2 version fixed bin unal, 2 62 2 status_table ptr unal, /* for analyze_device_stat_ */ 2 63 2 null_line_data bit (36) aligned, 2 64 2 null_line_dcw bit (36) aligned, 2 65 2 alarm_time fixed bin (71) unaligned; /* current timer_manager_ limit */ 2 66 dcl prt_bufferp ptr; 2 67 2 68 dcl 1 prt_buffer aligned based (prt_bufferp), 2 69 2 header, 2 70 3 number fixed bin (6) uns unal, 2 71 3 busy bit (1) unal, 2 72 3 pad bit (4) unal, 2 73 3 dcw_count fixed bin (7) uns unal, 2 74 3 data_ends fixed bin (18) uns unal, 2 75 2 idcw bit (36), 2 76 2 ddcw (sdb.max_dcws + 1) bit (36) aligned; 2 77 2 78 dcl wseg (0:sdb.data_end - 1) bit (36) aligned based (sdb.wsegp); /* the IOI buffer segment */ 2 79 dcl 1 prt_buffers (0:sdb.max_buffers - 1) aligned like prt_buffer based (sdb.wsegp); 2 80 2 81 /* NOTE: The Spooling_dim IO Module also uses this include file, 2 82* as it uses the printer stream also. If changes are made to this include file, 2 83* see to it that the changes are also reflected in the Spooling_dim procedures. 2 84* The spooling_dim uses the standard printer_dim order and changemode procedures. 2 85* JCW 1/25/78 */ 2 86 2 87 /* END INCLUDE FILE ... prt_sdb.incl.pl1 */ 21 3 1 3 2 /* Begin include file ...... prt_info.incl.pl1 */ 3 3 /* last modified 6/12/75 by Noel I. Morris */ 3 4 3 5 dcl pip ptr; /* pointer to printer info structure */ 3 6 3 7 dcl 1 prt_info based (pip) aligned, /* printer info structure */ 3 8 2 devname char (4), /* name of device */ 3 9 2 devx fixed bin, /* device index */ 3 10 2 model fixed bin, /* printer model number */ 3 11 2 type fixed bin, /* printer type number */ 3 12 2 train fixed bin, /* print train ID */ 3 13 2 line_length fixed bin, /* max length of printed line */ 3 14 2 print_idcw bit (36), /* IDCW to print 1 line */ 3 15 2 term_idcw bit (36); /* IDCW to stop printer channel */ 3 16 3 17 /* End of include file ...... prt_info.incl.pl1 */ 3 18 22 4 1 /* BEGIN INCLUDE FILE ... spooling_info.incl.pl1 */ 4 2 /* Spooling IO Module control structure. Created 11/4/74 by Janice Phillipps */ 4 3 /* Modified 1/25/78 by J. C. Whitmore during spool driver update */ 4 4 4 5 dcl sip ptr; /* pointer to spooling info structure */ 4 6 4 7 dcl 1 spooling_info based (sip) aligned, /* spooling info structure */ 4 8 2 version fixed bin, /* version of structure */ 4 9 2 pad1 fixed bin, /* space broken for ptr allocation */ 4 10 2 iocbp ptr, /* ptr to io control block used by tape_ansi_ */ 4 11 2 switch_name char (32), /* name of io switch attached to tape_ansi_ */ 4 12 2 nvols fixed bin, /* number of tape volumes requested */ 4 13 2 density char (4), 4 14 2 block_lnth char (4), 4 15 2 volids (3) char (6), /* array of tape volume ids */ 4 16 2 filesetid char (6), /* name of current ansi file set */ 4 17 2 comment char (64), /* comment to operator at mount */ 4 18 2 phys_line_length fixed bin, 4 19 2 phys_page_length fixed bin, 4 20 2 filenumber fixed bin, /* number of current file on tape */ 4 21 2 static_number char (6) aligned, 4 22 2 flgs, 4 23 3 fst_call bit (1) unaligned, /* indicates first time thru attach code */ 4 24 3 lst_call bit (1) unaligned, /* indicates spooling tape will be detached */ 4 25 3 io_sw bit (1) unaligned, /* = "1"b if ring in tape */ 4 26 3 vol_mount bit (1) unaligned, 4 27 3 pad1 bit (32) unaligned, 4 28 2 spooling_limits, 4 29 3 spool_file_limit_sw fixed bin, /* = 1 when reached specified spooling file limit */ 4 30 3 spool_line_limit_sw fixed bin, /* = 1 when reached specifid spooling line limit */ 4 31 3 file_limit fixed bin (35), /* count of files to spool until */ 4 32 3 line_limit fixed bin (35), /* count of lines to spool until */ 4 33 2 spooling_file_count fixed bin (35), /* count of files spooled so far */ 4 34 2 spooling_line_count fixed bin (35); /* count of lines spooled so far */ 4 35 4 36 dcl spooling_info_version_4 fixed bin int static init (4) options (constant); 4 37 4 38 4 39 /* END INCLUDE FILE ... spooling_info.incl.pl1 */ 23 5 1 5 2 /* BEGIN INCLUDE FILE ... prt_conv_info.incl.pl1 */ 5 3 /* Modified: 12 September 1980 by G. Palter */ 5 4 5 5 5 6 /****^ HISTORY COMMENTS: 5 7* 1) change(87-05-10,Gilcrease), approve(87-07-31,MCR7686), 5 8* audit(88-02-01,Farley), install(88-02-02,MR12.2-1019): 5 9* Add modes.line_nbrs, flags.(eol eof) bits for eor -nb. 5 10* END HISTORY COMMENTS */ 5 11 5 12 5 13 dcl pcip ptr; /* pointer to conversion info structure */ 5 14 5 15 dcl 1 pci based (pcip) aligned, /* printer conversion info structure */ 5 16 2 cv_proc ptr, /* pointer to character conversion procedure */ 5 17 2 lmarg fixed bin, /* left margin indentation */ 5 18 2 rmarg fixed bin, /* right margin limit */ 5 19 2 page_length fixed bin, /* number of lines on page */ 5 20 2 phys_line_length fixed bin, /* physical width of paper */ 5 21 2 phys_page_length fixed bin, /* physical length of paper */ 5 22 2 lpi fixed bin, /* lines per inch */ 5 23 2 sheets_per_page fixed bin, /* sheets of paper per logical page */ 5 24 2 line_count fixed bin, /* count of converted lines */ 5 25 2 page_count fixed bin, /* count of converted pages */ 5 26 2 func fixed bin, /* special conversion function */ 5 27 /* 0 => normal conversion */ 5 28 /* 1 => change NL to FF */ 5 29 /* 2 => change NL to top inside page */ 5 30 /* 3 => change NL to end of page */ 5 31 /* 4 => change NL to top of outside page */ 5 32 (2 modes, /* conversion modes */ 5 33 3 overflow_off bit (1), /* "1"b to suppress end of page overflow */ 5 34 3 single_space bit (1), /* "1"b to change all forms advance chars to NL */ 5 35 3 non_edited bit (1), /* "1"b to print ASCII control chars */ 5 36 3 truncate bit (1), /* "1"b to truncate lines that are too long */ 5 37 3 esc bit (1), /* "1"b to process ESC character */ 5 38 3 ctl_char bit (1), /* "1"b to output control characters */ 5 39 3 line_nbrs bit (1), /* "1"b to output line numbers */ 5 40 3 pci_pad bit (5), 5 41 2 flags, /* flags internal to prt_conv_ */ 5 42 3 ignore_next_ff bit (1), /* ON => prt_conv_ just output a FF; ignore next character if 5 43* it's a FF */ 5 44 3 eol bit (1), /* "1"b = end-of-line encountered */ 5 45 3 eof bit (1), /* "1"b = end-of-segment encountered */ 5 46 3 flags_pad bit (3), 5 47 2 coroutine_modes, 5 48 3 upper_case bit(1), /* "1"b to convert to upper case */ 5 49 3 ht bit(1), /* "1"b to skip tab conversion */ 5 50 3 coroutine_pad bit(13), 5 51 3 slew_table_idx bit(3) ) unal, /* slew table index */ 5 52 2 top_label_line char (136), /* contains an optional top of page label */ 5 53 2 bot_label_line char (136), /* contains an optional bottom of page label */ 5 54 2 top_label_length fixed bin, /* length of top label line */ 5 55 2 bot_label_length fixed bin, /* length of bottom label line */ 5 56 2 form_stops (256) unal, /* logical form stops */ 5 57 3 lbits bit (9), /* leftmost bits */ 5 58 3 rbits bit (9), /* rightmost bits */ 5 59 5 60 /* The following items are for internal use by the print conversion procedure. 5 61* They should be zeroed once and then never referenced again. */ 5 62 5 63 2 level fixed bin, /* overstrike level */ 5 64 2 pos fixed bin, /* print position at end of incomplete line */ 5 65 2 line fixed bin, /* current line number */ 5 66 2 slew_residue fixed bin, /* number of lines remaining to be slewed */ 5 67 2 label_nelem fixed bin, /* characters remaining in label */ 5 68 2 label_wksp ptr, /* pointer to label being processed */ 5 69 2 sav_pos fixed bin, /* position saved during label processing */ 5 70 2 esc_state fixed bin, /* state of ESC processing */ 5 71 2 esc_num fixed bin, /* number following ESC sequence */ 5 72 2 temp bit (36); /* conversion proc temporary */ 5 73 5 74 /* End of include file ...... prt_conv_info.incl.pl1 */ 5 75 24 6 1 /* Begin include file ...... prt_order_info.incl.pl1 */ 6 2 /* Created 3/15/77 by Noel I. Morris */ 6 3 6 4 dcl orderp ptr; /* pointer to order info structure */ 6 5 6 6 dcl 1 counts based (orderp) aligned, /* structure used in "get_count" order */ 6 7 2 line fixed bin, /* line number */ 6 8 2 page_length fixed bin, /* length of page */ 6 9 2 lmarg fixed bin, /* left margin indentation */ 6 10 2 rmarg fixed bin, /* line length */ 6 11 2 line_count fixed bin, /* count of lines printed */ 6 12 2 page_count fixed bin; /* count of pages printed */ 6 13 6 14 dcl 1 position_data based (orderp) aligned, /* structure for "get_position" & "set_position" orders */ 6 15 2 line_number fixed bin (35), /* current line on the page */ 6 16 2 page_number fixed bin (35), /* current page number */ 6 17 2 total_lines fixed bin (35), /* lines printed since reset */ 6 18 2 total_chars fixed bin (35), /* chars processed since reset */ 6 19 2 pad(4) fixed bin; /* for the future */ 6 20 6 21 dcl 1 page_labels based (orderp) aligned, /* structure used in "page_labels" order */ 6 22 2 top_label char (136), /* label for top of page */ 6 23 2 bottom_label char (136); /* label for bottom of page */ 6 24 6 25 dcl channel_stops (256) bit (16) based (orderp) unal; /* structure used in "channel_stops" order */ 6 26 6 27 dcl 1 paper_info based (orderp) aligned, /* structure used in "paper_info" order */ 6 28 2 phys_page_length fixed bin, /* physical page length */ 6 29 2 phys_line_length fixed bin, /* physical line length */ 6 30 2 lines_per_inch fixed bin; /* lines per inch spacing */ 6 31 6 32 dcl ret_error_count fixed bin based (orderp); /* variable used for "get_error_count" order */ 6 33 6 34 /* End of include file ...... prt_order_info.incl.pl1 */ 25 26 27 28 dcl (addr, null, substr, unspec) builtin; 29 30 dcl command_question condition; 31 32 dcl a_sdbp ptr, 33 constant fixed bin init (1), 34 code fixed bin (35), 35 retain_code fixed bin, 36 opt char (3) init (""), 37 request char (*), /* order request */ 38 statp ptr, 39 status bit (72) aligned; /* IOS status bits */ 40 41 dcl demount_code fixed bin based (orderp); 42 43 dcl 1 spooling_data based (orderp) aligned, /* structure used in the "get line length" call */ 44 2 siptr ptr, /* ptr to info structure */ 45 2 line_length fixed bin; 46 47 dcl spool_static_$tally_printed fixed bin ext; /* turned on when print spool tallies */ 48 49 dcl error_table_$dev_nt_assnd fixed bin (35) ext; 50 dcl error_table_$not_open fixed bin (35) ext; 51 dcl error_table_$bad_arg fixed bin (35) ext; 52 dcl error_table_$uninitialized_volume fixed bin (35) ext; 53 dcl error_table_$no_file fixed bin (35) ext; 54 dcl error_table_$not_attached fixed bin (35) ext; 55 56 57 dcl file_monitor_$attach entry (ptr, char (*) aligned, fixed bin, fixed bin (35)); 58 dcl file_monitor_$cleanup entry (ptr, char (*) aligned, fixed bin (35)); 59 dcl file_monitor_$detach entry (ptr, fixed bin, fixed bin (35)); 60 dcl ioa_ entry options (variable); 61 dcl prtdim_$prtdim_changemode entry (ptr, char (*), char (*), bit (72) aligned); 62 dcl prtdim_$prtdim_order entry (ptr, char (*), ptr, bit (72) aligned); 63 dcl spooling_question_handler_ entry (ptr, fixed bin (35)); 64 65 66 67 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ 68 69 status = (72)"0"b; /* Clear status bits. */ 70 sdb_ptr = a_sdbp; 71 statp = addr (status); 72 statp -> stat.ios.bit41_trans_term = "1"b; /* Set transaction terminated bit. */ 73 sip = addr (sdb.spool_info); /* ptr to spool_info structure */ 74 pcip = addr (sdb.conv_info); /* Get pointer to print conversion info. */ 75 code = 0; 76 77 on command_question call spooling_question_handler_ (sip, code); 78 79 if request = "runout" then return; /* just a formality for this mod */ 80 81 else if request = "resetwrite" then return; /* again a formality, keep from prtdim_order */ 82 83 else if request = "paper_info" then do; /* Set new physical paper characteristics. */ 84 if paper_info.lines_per_inch ^= 6 & /* Check for either 6 lpi or 8 lpi. */ 85 paper_info.lines_per_inch ^= 8 then do; 86 bad_arg: substr (status, 1, 36) = unspec (error_table_$bad_arg); 87 return; 88 end; 89 if paper_info.phys_page_length < 10 | paper_info.phys_page_length > 127 then go to bad_arg; 90 if paper_info.phys_line_length < 10 | paper_info.phys_line_length > 255 then go to bad_arg; 91 92 pci.phys_page_length = paper_info.phys_page_length; 93 pci.phys_line_length = paper_info.phys_line_length; 94 pci.lpi = paper_info.lines_per_inch; 95 spooling_info.phys_page_length = pci.phys_page_length; 96 spooling_info.phys_line_length = pci.phys_line_length; 97 98 call prtdim_$prtdim_changemode (sdb_ptr, "", (""), status); /* make modes conform */ 99 end; 100 101 else if request = "file_open" then do; /* request to open file thru tape_ansi_ IO Module */ 102 call file_monitor_$attach (sip, "", 0, code); /* call to attach and open tape file */ 103 if code ^= 0 then do; 104 call file_monitor_$cleanup (sip, "", code); 105 stat.fbpart = error_table_$dev_nt_assnd; 106 end; 107 end; 108 109 else if request = "demount_tape" then do; /* request to demount tape thru tape_ansi_ IO Module */ 110 call file_monitor_$cleanup (sip, "", code); 111 statp -> stat.fbpart = code; 112 end; 113 114 else if request = "file_close" then do; 115 if orderp = null then retain_code = 0; /* no demount unless asked */ 116 else retain_code = demount_code; 117 118 call file_monitor_$detach (sip, retain_code, code); /* close and detach file */ 119 statp -> stat.fbpart = code; 120 end; 121 122 else if request = "print_tally" then do; 123 call ioa_ ("^/^-Spooling file count is ^d", spooling_info.spooling_file_count); 124 call ioa_ ("^-Spooling line count is ^d^/", spooling_info.spooling_line_count); 125 spool_static_$tally_printed = 1; 126 end; 127 128 else if request = "get_info_ptr" then do; 129 spooling_data.siptr = sip; /* set ptr to info structure */ 130 end; 131 132 133 else do; /* otherwise pass on the order to prtdim_ */ 134 call prtdim_$prtdim_order (sdb_ptr, request, orderp, status); 135 end; 136 137 return; 138 139 end spooling_dim_order_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 02/02/88 1541.5 spooling_dim_order_.pl1 >special_ldd>install>MR12.2-1019>spooling_dim_order_.pl1 20 1 02/05/76 1532.2 status.incl.pl1 >ldd>include>status.incl.pl1 21 2 11/04/83 1107.6 prt_sdb.incl.pl1 >ldd>include>prt_sdb.incl.pl1 22 3 08/29/75 1310.5 prt_info.incl.pl1 >ldd>include>prt_info.incl.pl1 23 4 02/23/78 1619.8 spooling_info.incl.pl1 >ldd>include>spooling_info.incl.pl1 24 5 02/02/88 1529.2 prt_conv_info.incl.pl1 >special_ldd>install>MR12.2-1019>prt_conv_info.incl.pl1 25 6 09/28/78 1359.8 prt_order_info.incl.pl1 >ldd>include>prt_order_info.incl.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. a_sdbp parameter pointer dcl 32 ref 11 70 addr builtin function dcl 28 ref 71 73 74 105 bit41_trans_term 1(04) based bit(1) level 3 packed unaligned dcl 1-5 set ref 72* code 000115 automatic fixed bin(35,0) dcl 32 set ref 75* 77* 102* 103 104* 110* 111 118* 119 command_question 000106 stack reference condition dcl 30 ref 77 constant 000114 automatic fixed bin(17,0) initial dcl 32 set ref 32* conv_info 54 based structure level 2 dcl 2-12 set ref 74 demount_code based fixed bin(17,0) dcl 41 ref 116 error_table_$bad_arg 000014 external static fixed bin(35,0) dcl 51 ref 86 error_table_$dev_nt_assnd 000012 external static fixed bin(35,0) dcl 49 ref 105 fbpart based fixed bin(35,0) level 2 dcl 1-5 set ref 105* 111* 119* file_monitor_$attach 000016 constant entry external dcl 57 ref 102 file_monitor_$cleanup 000020 constant entry external dcl 58 ref 104 110 file_monitor_$detach 000022 constant entry external dcl 59 ref 118 ioa_ 000024 constant entry external dcl 60 ref 123 124 ios 1 based structure level 2 dcl 1-5 lines_per_inch 2 based fixed bin(17,0) level 2 dcl 6-27 ref 84 84 94 lpi 7 based fixed bin(17,0) level 2 dcl 5-15 set ref 94* null builtin function dcl 28 ref 115 opt 000117 automatic char(3) initial unaligned dcl 32 set ref 32* orderp parameter pointer dcl 6-4 set ref 11 84 84 89 89 90 90 92 93 94 115 116 129 134* paper_info based structure level 1 dcl 6-27 pci based structure level 1 dcl 5-15 pcip 000104 automatic pointer dcl 5-13 set ref 74* 92 93 94 95 96 phys_line_length 47 based fixed bin(17,0) level 2 in structure "spooling_info" dcl 4-7 in procedure "spooling_dim_order_" set ref 96* phys_line_length 5 based fixed bin(17,0) level 2 in structure "pci" dcl 5-15 in procedure "spooling_dim_order_" set ref 93* 96 phys_line_length 1 based fixed bin(17,0) level 2 in structure "paper_info" dcl 6-27 in procedure "spooling_dim_order_" ref 90 90 93 phys_page_length 50 based fixed bin(17,0) level 2 in structure "spooling_info" dcl 4-7 in procedure "spooling_dim_order_" set ref 95* phys_page_length based fixed bin(17,0) level 2 in structure "paper_info" dcl 6-27 in procedure "spooling_dim_order_" ref 89 89 92 phys_page_length 6 based fixed bin(17,0) level 2 in structure "pci" dcl 5-15 in procedure "spooling_dim_order_" set ref 92* 95 prt_buffer based structure level 1 dcl 2-68 prt_info based structure level 1 dcl 3-7 prtdim_$prtdim_changemode 000026 constant entry external dcl 61 ref 98 prtdim_$prtdim_order 000030 constant entry external dcl 62 ref 134 request parameter char unaligned dcl 32 set ref 11 79 81 83 101 109 114 122 128 134* retain_code 000116 automatic fixed bin(17,0) dcl 32 set ref 115* 116* 118* sdb based structure level 1 dcl 2-12 sdb_ptr 000100 automatic pointer dcl 2-10 set ref 70* 73 74 98* 134* sip 000102 automatic pointer dcl 4-5 set ref 73* 77* 95 96 102* 104* 110* 118* 123 124 129 siptr based pointer level 2 dcl 43 set ref 129* spool_info 434 based fixed bin(17,0) array level 2 dcl 2-12 set ref 73 spool_static_$tally_printed 000010 external static fixed bin(17,0) dcl 47 set ref 125* spooling_data based structure level 1 dcl 43 spooling_file_count 61 based fixed bin(35,0) level 2 dcl 4-7 set ref 123* spooling_info based structure level 1 dcl 4-7 spooling_line_count 62 based fixed bin(35,0) level 2 dcl 4-7 set ref 124* spooling_question_handler_ 000032 constant entry external dcl 63 ref 77 stat based structure level 1 dcl 1-5 statp 000120 automatic pointer dcl 32 set ref 71* 72 111 119 status parameter bit(72) dcl 32 set ref 11 69* 71 86* 98* 105 134* substr builtin function dcl 28 set ref 86* unspec builtin function dcl 28 ref 86 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. channel_stops based bit(16) array unaligned dcl 6-25 counts based structure level 1 dcl 6-6 error_table_$no_file external static fixed bin(35,0) dcl 53 error_table_$not_attached external static fixed bin(35,0) dcl 54 error_table_$not_open external static fixed bin(35,0) dcl 50 error_table_$uninitialized_volume external static fixed bin(35,0) dcl 52 page_labels based structure level 1 dcl 6-21 pip automatic pointer dcl 3-5 position_data based structure level 1 dcl 6-14 prt_bufferp automatic pointer dcl 2-66 prt_buffers based structure array level 1 dcl 2-79 ret_error_count based fixed bin(17,0) dcl 6-32 spooling_info_version_4 internal static fixed bin(17,0) initial dcl 4-36 wseg based bit(36) array dcl 2-78 NAMES DECLARED BY EXPLICIT CONTEXT. bad_arg 000210 constant label dcl 86 ref 89 90 spooling_dim_order_ 000074 constant entry external dcl 11 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 722 756 545 732 Length 1266 545 34 274 154 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME spooling_dim_order_ 114 external procedure is an external procedure. on unit on line 77 70 on unit STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME spooling_dim_order_ 000100 sdb_ptr spooling_dim_order_ 000102 sip spooling_dim_order_ 000104 pcip spooling_dim_order_ 000114 constant spooling_dim_order_ 000115 code spooling_dim_order_ 000116 retain_code spooling_dim_order_ 000117 opt spooling_dim_order_ 000120 statp spooling_dim_order_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return_mac enable_op ext_entry_desc int_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. file_monitor_$attach file_monitor_$cleanup file_monitor_$detach ioa_ prtdim_$prtdim_changemode prtdim_$prtdim_order spooling_question_handler_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$bad_arg error_table_$dev_nt_assnd spool_static_$tally_printed LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 11 000067 32 000107 69 000113 70 000120 71 000123 72 000125 73 000127 74 000131 75 000133 77 000134 79 000162 81 000171 83 000175 84 000201 86 000210 87 000214 89 000215 90 000222 92 000227 93 000232 94 000234 95 000236 96 000241 98 000243 99 000267 101 000270 102 000274 103 000322 104 000324 105 000345 107 000351 109 000352 110 000356 111 000377 112 000401 114 000402 115 000406 116 000414 118 000417 119 000432 120 000434 122 000435 123 000441 124 000462 125 000503 126 000506 128 000507 129 000513 130 000516 134 000517 137 000544 ----------------------------------------------------------- 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