COMPILATION LISTING OF SEGMENT raw_tape_io_ Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Multics Op. - System M Compiled on: 12/17/86 0849.9 mst Wed Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1983 * 4* * * 5* *********************************************************** */ 6 raw_tape_io_: procedure; 7 8 /* format: style4 */ 9 10 /* * This program runs under control of the mtape_ I/O module and is meant 11* * to process data and file formats that are specific to RAW 12* * formated tapes, and is known as a Per-Format module. 13* * 14* * This Per-Format module is not fully implemented, and is only included 15* * so that if a RAW tape volume is mounted and recognized by 16* * mtape_/RCP, a linkage error will not result. When this module is 17* * called at its pfm_init entry, an error message is displayed 18* * explaining that the RAW Per-format module has not been 19* * implemented, and an error code is returned. 20* * 21* * Modification History: 22* * 23* * Dummy version created by J. A. Bush 07/10/83 24**/ 25 26 /* ARGUMENT DATA */ 27 28 dcl arg_mtdp ptr; /* Pointer to the mtape data structure */ 29 dcl arg_code fixed bin (35); /* Return error code */ 30 dcl arg_info_ptr ptr; /* Pointer to Order data from iox_$control call */ 31 dcl arg_io_call_infop ptr; /* Pointer to io_call control info structure */ 32 dcl arg_order_name char (*); /* Name of Control order to be processed */ 33 dcl arg_lr_ptr ptr; /* Pointer to current label record structure */ 34 dcl arg_labno fixed bin; /* label record within label group */ 35 dcl arg_type fixed bin; /* 1 => BOF; 2 => EOV; 3 => EOF */ 36 dcl arg_convert fixed bin; /* Label record conversion indicator */ 37 38 /* AUTOMATIC DATA */ 39 40 dcl code fixed bin (35); 41 dcl buf_ptr ptr; /* Auto copy of users buffer pointer */ 42 dcl buf_len fixed bin (21); /* Auto copy of users lrec buffer */ 43 dcl rec_len fixed bin (21); /* Auto copy of logical record length */ 44 45 /* CONSTANT DATA */ 46 47 /* EXTERNAL STATIC DATA */ 48 49 dcl error_table_$unimplemented_version fixed bin (35) ext static; 50 51 /* BUILTIN FUNCTIONS */ 52 53 /* EXTERNAL ENTRIES */ 54 55 /* BASED VARIABLES */ 56 57 /* pfm_init - entry to initialize the Per-Format module, setting up file and volume 58* processing parameters and determining correctness of current volume */ 59 60 pfm_init: entry (arg_mtdp, arg_code); 61 62 call SETUP; /* initialize our enviornment */ 63 code = error_table_$unimplemented_version; /* This is for the dummy PFM */ 64 call mtape_$error (mtdp, code, 65 "^/The mtape_ RAW Per-Format module has not been fully implemented."); 66 arg_code = code; 67 return; 68 69 /* file_open - entry to do format specific processing in opening the file 70* or file set (i.e. read and write file labels) */ 71 72 file_open: entry (arg_mtdp, arg_code); 73 74 call SETUP; /* initialize our enviornment */ 75 return; 76 77 /* file_close - entry to do format specific processing in closing the file 78* or file set (i.e. read and write file trailer labels) */ 79 80 file_close: entry (arg_mtdp, arg_code); 81 82 call SETUP; /* initialize our envioSysLog01T8>system_control_1>as_logs o #T7|TgGQcj$ oT7|<vinc incremental_volume_dumper: Processed abb05: 0 0 99 4 0$ pT:;vinc incremental_volume_dumper: Processed abb06: 0 0 3 2 0$ qT@/<vinc incremental_volume_dumper: Processed abb07: 0 0 47 5 2$ rTEd<vinc incremental_volume_dumper: Processed abb08: 0 0 52 3 0$ sTE}8vinc incremental_volume_dumper: Dump finished at 0727.8$ tTE6vinc incremental_volume_dumper: Dumper going to sleep$ uTF&vinc r 07:27 41.164 1787$ vTF=vinc $ wT7 ;vinc incremental_volume_dumper: Dumper waking up at 0824.7$ xT7}=?vinc incremental_volume_dumper: Processed rpv: 146 50 412 40 3$ yT8ȻCvinc incremental_volume_dumper: Processed root_01: 139 53 883 53 2$ zT8uvCvinc incremental_volume_dumper: Processed root_02: 167 64 303 49 3$ {T8'Cvinc incremental_volume_dumper: Processed root_03: 127 42 900 56 1$ |T8`yCvinc incremental_volume_dumper: Processed root_04: 173 46 268 40 1$ }T8d;;vinc incremental_volume_dumper: Processed tr01: 0 0 1 3 15$ ~T8u>vinc incremental_volume_dumper: Processed bull01: 0 0 118 2 4$ T8wE<vinc incremental_volume_dumper: Processed bull02: 0 0 1 1 4$ ʀT8yV<vinc incremental_volume_dumper: Processed bull03: 0 0 0 1 4$ ʁT8{<vinc incremental_volume_dumper: Processed bull04: 0 0 0 0 6$ ʂT8~=vinc incremental_volume_dumper: Processed bull05: 0 0 0 0 12$ ʃT8$=vinc incremental_volume_dumper: Processed pub_01: 0 0 27 6 0$ ʄT8X=vinc incremental_volume_dumper: Processed pub_02: 0 0 35 7 0$ ʅT8>vinc incremental_volume_dumper: Processed pub_03: 0 0 38 12 0$ ʆT8=vinc incremental_volume_dumper: Processed pub_04: 0 0 14 7 0$ ʇT8\=vinc incremental_volume_dumper: Processed pub_05: 0 0 38 9 0$ ʈT8'>vinc incremental_volume_dumper: Processed pub_06: 0 0 125 7 0$ ʉT8ġ=vinc incremental_volume_dumper: Processed pub_07: 0 0 54 6 0$ ʊT8G>vinc incremental_volume_dumper: Processed pub_08: 0 0 152 9 0$ ʋT8;<vinc incremental_volume_dumper: Processed abb01: 0 0 31 3 1$ ʌT8;vinc incremental_volume_dumper: Processed abb02: 0 0 5 5 3$ ʍT8;<vinc incremental_volume_dumper: Processed abb03: 0 0 20 9 3$ ʎT8=vinc incremental_volume_dumper: Processed abb04: 0 0 41 6 10$ ʏT92<vinc incremental_volume_dumper: Processed abb05: 0 0 92 3 7$ ʐT9<vinc incremental_volume_dumper: Processed abb06: 0 0 78 8 2$ ʑT9 >vinc incremental_volume_dumper: Processed abb07: 0 0 16 11 10$ ʒT9%<vinc incremental_volume_dumper: Processed abb08: 0 0 55 3 3$ ʓT9& 8vinc incremental_volume_dumper: Dump finished at 0828.1$ ʔT9&/e6vinc incremental_volume_dumper: Dumper going to sleep$ ʕTRq";vinc incremental_volume_dumper: Dumper waking up at 0924.7$ ʖTR?vinc incremental_volume_dumper: Processed rpv: 130 49 379 37 3$ ʗTR}LCvinc incremental_volume_dumper: Processed root_01: 149 46 609 50 4$ ʘTRCvinc incremental_volume_dumper:last_ur_status_ptr ptr, /* If non-null, Ptr to last unrecoverable status */ 2 26 2 io_echan fixed bin (71), /* Fast wait channel for I/O interrupts */ 2 27 2 mount_echan fixed bin (71), /* Regular wait channel for mount requests */ 2 28 2 data_xfer_args, /* Arguments for time critical (read/write) calls */ 2 29 3 arg_buf_ptr ptr, /* Pointer to users buffer */ 2 30 3 arg_buf_len fixed bin (21), /* Length of users buffer in bytes */ 2 31 3 arg_rec_len fixed bin (21), /* Length of record read in bytes */ 2 32 2 error_lock fixed bin (35), /* if ^= 0 = file locked error code */ 2 33 2 abs_ans char (3), /* Query answer (yes or no) for abs user */ 2 34 2 user_type bit (1), /* "1"b => interactive; "0"b => absentee */ 2 35 2 display_errors bit (1), /* "1"b => display verbose error messages */ 2 36 2 force_end_of_volume bit (1), /* "1"b => simulate EOV on next write */ 2 37 2 opd_len fixed bin (21), /* Allocated length of open description */ 2 38 2 drives_in_use fixed bin, /* Number of tape drives currently in use */ 2 39 2 data_buffers, /* Info about data buffers */ 2 40 3 buf_ptrs (8) ptr, /* Pointers to a subset of ioi buffers */ 2 41 3 blind_buf_ptrs (8) ptr, /* Pointers to other subset of buffers */ 2 42 3 buf_len (8) fixed bin (21), /* Length of buffers in 9 bit bytes */ 2 43 3 blind_buf_len (8) fixed bin (21), /* Lengths of other subset of buffers */ 2 44 3 nbufs fixed bin, /* Number of data buffers currently in use */ 2 45 3 buf_size fixed bin (21), /* Allocated size of data buffers in bytes */ 2 46 3 bufs_per_subset fixed bin, /* Number of buffers to write/read per I/O */ 2 47 3 cur_buf_idx fixed bin, /* Index into subset of current buffer */ 2 48 3 run bit (1), /* "1"b => wrt I/O queued thru tape_ioi_; "0"b => ^Queued */ 2 49 2 label_buffer, /* Info about label record buffer */ 2 50 3 lab_bufp ptr, /* Pointer to label I/O buffer */ 2 51 3 lab_buf_len fixed bin (21), /* Length of label buffer in 9 bit bytes */ 2 52 2 tlb ptr, /* Pointer to a temp label record structure */ 2 53 2 position, /* Position on current volume */ 2 54 3 phy_file fixed bin, /* physical file number */ 2 55 3 phy_block fixed bin, /* physical block within physical file */ 2 56 2 current_file, /* instantanious info about current file */ 2 57 3 cur_block, /* info about current block */ 2 58 4 cur_buf_ptr ptr, /* Pointer to the current data buffer */ 2 59 4 log_record_ptr ptr, /* Pointer to current logical record */ 2 60 4 length fixed bin (21), /* Length of current block in bytes */ 2 61 4 processed fixed bin (21), /* Number of chars processed already */ 2 62 4 remain fixed bin (21), /* Number of chars remaining to be processed */ 2 63 4 log_record fixed bin (21), /* Log. record within the current block */ 2 64 3 char_size fixed bin, /* Size in bits of the data chars of this file */ 2 65 3 padding_char char (1), /* To pad blocks to mod 4 on binary writes */ 2 66 3 length_mode fixed bin, /* 0 => W/R mod 4 blocks; 1 => W/R non-mod 4 blocks */ 2 67 3 hdw_mode fixed bin, /* Hardware recording mode: 2 68* 1 = binary; 2 = nine track; 3 = BCD */ 2 69 3 conversion fixed bin, /* File data conversion: 2 70* 0 = no conversion; 1 = ASCII<->EBCDIC; 2 = ASCII<->BCD */ 2 71 3 buffer_offset fixed bin, /* Number of bytes prior to data */ 2 72 3 block_size fixed bin (21), /* Maximum block size for this file */ 2 73 3 record_size fixed bin (21), /* Maximum record size for this file */ 2 74 3 prev_block_no fixed bin (21), /* Number of previous block read */ 2 75 3 ad_file_format fixed bin, /* 1 = U; 2 = F; 3 = D or V; 4 = S or VS */ 2 76 3 file_blocked bit (1), /* "1"b => file is blocked */ 2 77 3 native_file bit (1), /* "1"b => current file written by mtape_ PFM */ 2 78 3 write_after_read bit (1), /* "1"b => truncate file (and file_set) at this record */ 2 79 3 first_file bit (1), /* "1"b => first file has been processed */ 2 80 3 tot_bytes_processed fixed bin (35), /* total bytes in this file section */ 2 81 3 last_io fixed bin, /* Last I/O operation (1 = read; 2 = write) */ 2 82 3 lrec_rrcx fixed bin, /* current index of the lrec round robin counter */ 2 83 3 lrec_rrc, /* history of last n logical records */ 2 84 4 block_no (0:7) fixed bin (35), /* block (within file section) where lrec starts */ 2 85 4 block_len (0:7) fixed bin (35), /* block len of current block */ 2 86 4 lrec_no (0:7) fixed bin (35), /* logical record within currnt block */ 2 87 4 abs_byte (0:7) fixed bin (35), /* byte (within file section) where lrec starts */ 2 88 4 byte_offset (0:7) fixed bin, /* offset of 1st byte of lrec (within block) */ 2 89 3 blk_rrcx fixed bin, /* index into blk_rrrc array of last block */ 2 90 3 blk_rrrc (0:7) fixed bin (35), /* contains Lrec count of last n blocks */ 2 91 3 tot_lrec fixed bin (35), /* Total logical records processed in current file */ 2 92 2 tioi_id bit (36), /* Identifier used for calls to tape_ioi_ */ 2 93 2 attach_info_ptr ptr, /* Pointer to attach option info */ 2 94 2 open_info_ptr ptr, /* Pointer to open option info */ 2 95 2 close_info_ptr ptr, /* Pointer to close option info */ 2 96 2 detach_info_ptr ptr, /* Pointer to detach option info */ 2 97 2 pfm_info_ptr ptr, /* Pointer to PFM info block */ 2 98 2 saved_pfm_info_ptr ptr, /* Pointer to info for "change_module" control OP */ 2 99 2 pfm_name char (32), /* Name of Per-Format module */ 2 100 2 pfm_required_entries like pfm_entries, /* Required entry point declarations in PFM */ 2 101 2 pfm_work_area (32) fixed bin (35); /* PFM work buffer */ 2 102 2 103 dcl 1 pfm_entries based aligned, /* Entry declarations for PFM entries */ 2 104 2 pfm_init entry (ptr, fixed bin (35)), /* PFM initialization entry */ 2 105 2 file_open entry (ptr, fixed bin (35)), /* PFM file_open entry */ 2 106 2 file_close entry (ptr, fixed bin (35)), /* PFM file_close entry */ 2 107 2 read entry (ptr, fixed bin (35)), /* PFM read entry */ 2 108 2 write entry (ptr, fixed bin (35)), /* PFM write entry */ 2 109 2 order entry (ptr, char (*), ptr, ptr, fixed bin (35)), /* PFM control order entry */ 2 110 2 decode_file_labels entry (ptr, ptr, fixed bin, fixed bin, fixed bin (35)), 2 111 2 encode_file_labels entry (ptr, ptr, fixed bin, fixed bin, fixed bin, fixed bin (35)); 2 112 2 113 dcl all_buf_ptrs (16) ptr based (addr (mtape_data.buf_ptrs)); 2 114 dcl all_buf_lens (16) fixed bin (21) based (addr (mtape_data.buf_len)); 2 115 dcl tape_blk (mtape_data.length) char (1) unaligned based (mtape_data.cur_buf_ptr); /* template for a tape block */ 2 116 2 117 /* END INCLUDE FILE mtape_data.incl.pl1 */ 1 5 1 6 3 1 /* BEGIN INCLUDE FILE mtape_vol_set.incl.pl1. Created by J. A. Bush 10/13/82 */ 3 2 /* The include file mtape_err_stats.incl.pl1 is referenced by this include file */ 3 3 /* format: style4 */ 3 4 3 5 dcl vs_ptr ptr; 3 6 3 7 dcl mtape_vs_version_1 char (8) int static options (constant) init ("mtvsv001"); 3 8 3 9 dcl 1 mtape_vol_set aligned based (vs_ptr), 3 10 lume_dumper: Processed abb01: 0 0 0 0 4$ Tn=vinc incremental_volume_dumper: Processed abb02: 0 0 11 4 11$ Tn,=vinc incremental_volume_dumper: Processed abb03: 0 0 22 3 22$ Tn*<vinc incremental_volume_dumper: Processed abb04: 0 0 0 0 13$ Tn|=vinc incremental_volume_dumper: Processed abb05: 0 0 14 4 15$ Tnن>vinc incremental_volume_dumper: Processed abb06: 0 0 131 3 16$ Tn=vinc incremental_volume_dumper: Processed abb07: 0 0 97 3 17$ Tn<vinc incremental_volume_dumper: Processed abb08: 0 0 4 1 12$ Tn]8vinc incremental_volume_dumper: Dump finished at 1027.7$ Tn6vinc incremental_volume_dumper: Dumper going to sleep$ T~kn&vabb Mounting tape AV0116 for writing$ T*Ovabb Mounted Multics volume "AV0116" (recorded at 6250 BPI), on device tapa_00$ T8=vabb complete_volume_dump: Processed abb03: 0 0 49298 6749 0$ Tvinc incremental_volume_dumper: Processed pub_02: 0 0 158 9 0$ T>vinc incremental_volume_dumper: Processed pub_03: 0 0 43 15 0$ Tk=vinc incremental_volume_dumper: Processed pub_04: 0 0 16 7 0$ T >vinc incremental_volume_dumper: Processed pub_05: 0 0 39 12 0$ T>vinc incremental_volume_dumper: Processed pub_06: 0 0 33 10 0$ T#f=vinc incremental_volume_dumper: Processed pub_07: 0 0 64 7 0$ T/>vinc incremental_volume_dumper: Processed pub_08: 0 0 37 13 0$ T3;vinc incremental_volume_dumper: Processed abb01: 0 0 5 3 5$ T8;vinc incremental_volume_dumper: Processed abb02: 0 0 7 4 7$ T EBCDIC (any case) 4 21* 3 = ASCII <==> BCD 4 22* 4 = ASCII ==> Upper case ASCII 4 23* 5 = ASCII ==> Upper case EBCDIC */ 4 24 4 25 /* END INCLUDE FILE mtape_label_record.incl.pl1 */ 1 9 1 10 5 1 /* BEGIN INCLUDE FILE mtape_err_stats.incl.pl1. Created by J. A. Bush 07/22/83. */ 5 2 /* format: style4 */ 5 3 5 4 dcl es_ptr ptr; 5 5 5 6 dcl 1 mtape_err_stats aligned based (es_ptr), /* Error statistics block */ 5 7 2 read like err_entry, /* For read operations */ 5 8 2 write like err_entry, /* For write operations */ 5 9 2 orders like err_entry, /* For non-data xfer operations */ 5 10 2 successful_retry (7) fixed bin (35); /* retrys that succeeded after 1-7 trys */ 5 11 5 12 dcl 1 err_entry aligned based, 5 13 2 errors fixed bin (35), 5 14 2 operations fixed bin (35); 5 15 5 16 /* END INCLUDE FILE mtape_err_stats.incl.pl1 */ 1 11 1 12 6 1 /* BEGIN INCLUDE FILE mtape_file_info.incl.pl1. Created by J. A. Bush 10/13/82 */ 6 2 /* format: style4 */ 6 3 6 4 dcl fi_ptr ptr; 6 5 6 6 dcl mtape_fi_version_1 char (8) int static options (constant) init ("mtfiv001"); 6 7 6 8 dcl 1 mtape_file_info aligned based (fi_ptr), 6 9 2 version char (8), /* Current version */ 6 10 2 prev_fi_ptr ptr, /* Pointer to the previous file info structure */ 6 11 2 next_fi_ptr ptr, /* Pointer to the next file info structure */ 6 12 2 first_file_lab_ptr ptr, /* Pointer to 1st label record struc. */ 6 13 2 last_file_lab_ptr ptr, /* Pointer to last label record struc. */ 6 14 2 first_file_trail_ptr ptr, /* Pointer to 1st trailer record struc. */ 6 15 2 last_file_trail_ptr ptr, /* Pointer to last trailer record struc. */ 6 16 2 first_file_section_ptr ptr, /* Pointer to file_info struct. of 1st file section */ 6 17 2 begin_vs_ptr ptr, /* Pointer to 1st volume set struct. containing this file */ 6 18 2 end_vs_ptr ptr, /* Pointer to last volume set struct. containing this file */ 6 19 2 position_within_file fixed bin, /* 0 = In HDR; 1 = In data file; 2 = In trailer; 6 20* 3 = Not positioned within this file 6 21* 4 = At beginning of data file; 5 = At EOF */ 6 22 2 per_file_info, /* Information pertaining to entire file */ 6 23 3 file_id char (32), /* File identifier or name */ 6 24 3 file_set_id char (32), /* Identifies the file set */ 6 25 3 creation_date char (6), /* File creation date in form " yyddd" */ 6 26 3 expiration_date char (6), /* File expiration date in form " yyddd" */ 6 27 3 file_code char (3), /* Printable file code */ 6 28 3 file_format fixed bin, /* Current file format: 6 29* 0 = unspecified; 1 = U; 2 = F; 3 = D or V; 6 30* 4 = S or VS; 5 = FB; 6 31* 6 = DB or VB; 7 = SB or VBS; */ 6 32 3 seq_number fixed bin, /* File sequence number */ 6 33 3 generation fixed bin, /* File generation number, if supported */ 6 34 3 gen_version fixed bin, /* File generation version number, if supported */ 6 35 3 char_size fixed bin, /* Size in bits of the data chars of this file */ 6 36 3 hdw_mode fixed bin, /* Hardware mode: 1 = binary; 2 = nine; 3 = BCD */ 6 37 3 conversion fixed bin, /* File data conversion: 6 38* 1 = no conversion; 2 = ASCII<->EBCDIC; 3 = ASCII<->BCD */ 6 39 3 buffer_offset fixed bin, /* Number of bytes prior to data */ 6 40 3 length_mode fixed bin, /* 0 => W/R mod 4 blocks; 1 => W/R non-mod 4 blocks */ 6 41 3 block_size fixed bin (21), /* Maximum block size for this file */ 6 42 3 record_size fixed bin (21), /* Maximum record size for this file */ 6 43 3 native_file bit (1), /* "1"b => current file written by mtape_ PFM */ 6 44 3 user_labels_present bit (1), /* "1"b => UHL/UTL are present */ 6 45 3 unlabeled_file bit (1), /* "1"b => this is unlabeled file */ 6 46 3 pfm_opt_sw (5) bit (1), /* PFM dependent */ 6 47 3 pfm_opt_value (5) fixed bin (35), /* PFM dependent */ 6 48 3 pfm_opt_str (5) char (32), /* PFM dependent */ 6 49 2 per_section_info, /* Information pertaining only to this file section */ 6 50 3 section fixed bin, /* File section number for multi-volume files */ 6 51 3 phy_file fixed bin, /* Phy. file of HDR label GRP, on the current volume */ 6 52 3 first_file_on_volume bit (1), /* "1"b => First file or file section on this volume */ 6 53 3 end_of_file_set bit (1), /* "1"b => This is last file of file set */ 6 54 3 block_count fixed bin (35), /* Number of blocks in this file section */ 6 55 3 read_errors fixed bin (35), /* of errors encountered reading this file */ 6 56 3 write_errors fixed bin (35); /* of errors encountered writing this file */ 6 57 6 58 /* END INCLUDE FILE mtape_file_info.incl.pl1 */ 1 13 1 14 7 1 /* BEGIN INCLUDE FILE mtape_attach_info.incl.pl1. Created by J. A. Bush 06/13/83 */ 7 2 /* format: style4 */ 7 3 7 4 dcl maip ptr; 7 5 7 6 dcl mtape_attach_info_version_1 char (8) int static options (constant) init ("maiv0001"); 7 7 7 8 dcl 1 mtape_attach_info aligned based (maip), 7 9 2 version char (8), /* Current structure version */ 7 10 2 density fixed bin (35), /* 200, 556, 800, 1600, 6250 BPI */ 7 11 2 tracks fixed bin (35), /* Number of tracks, 7 or 9 */ 7 12 2 speed bit (36), /* "000"b = any speed; "1xx"b = 75 IPS; 7 13* "x1x"b = 125 IPS; "xx1"b = 200 IPS */ 7 14 2 ndrives fixed bin (35), /* 0 = unspecified; 1 - 63 devices to be used */ 7 15 2 wait_time fixed bin (35), /* time to wait in minutes for available device */ 7 16 2 pfm_prefix char (21), /* if "-volume_type" was specified */ 7 17 2 default_pfm_prefix char (21), /* if no "-vt" specified and blank volume */ 7 18 2 display bit (1), /* Display attach description on user_output */ 7 19 2 labeled bit (1), /* "1"b => labeled; "0"b => unlabeled volume set */ 7 20 2 wait bit (1), /* "1"b => wait for available devices; "0"b => don't wait */ 7 21 2 system bit (1), /* "1"b => User wants to be a "system" process */ 7 22 2 ring bit (1); /* "1"b => write ring in; "0"b => no write ring */ 7 23 7 24 /* END INCLUDE FILE mtape_attach_info.incl.pl1 */ 1 15 1 16 8 1 /* BEGIN INCLUDE FILE mtape_pfm_info.incl.pl1. Created by J. A. Bush 06/16/83 */ 8 2 /* format: style4 */ 8 3 8 4 dcl mpfmip ptr; 8 5 8 6 dcl mtape_pfm_info_version_1 char (8) int static options (constant) init ("mpiv0001"); 8 7 8 8 dcl 1 mtape_pfm_info aligned based (mpfmip), /* PFM information block */ 8 9 2 version char (8), /* Current structure version */ 8 10 2 module_id char (21), /* For identification of PFM. (e.g. ANSI, IBM, GCOS) */ 8 11 2 open_modes_allowed (3) fixed bin, /* Allowable open modes for this PFM */ 8 12 2 bof_prefix char (3), /* For identification of BOF labels */ 8 13 2 eov_prefix char (3), /* For identification of EOV labels */ 8 14 2 eof_prefix char (3), /* For identification of EOF labels */ 8 15 2 no_labels_ok bit (1), /* "1"b => PFM processes unlabeled volumes */ 8 16 2 multi_volumes_ok bit (1), /* "1"b => PFM processes multi-volume sets */ 8 17 2 extended_error_recovery bit (1), /* "1"b => PFM will do error recovery after mtape_ gives up */ 8 18 2 pfm_open_options like pfm_options, /* open options common to this PFM */ 8 19 2 pfm_close_options like pfm_options; /* close options common to this PFM */ 8 20 8 21 dcl 1 pfm_options aligned based, /* common to open and close pfm options */ 8 22 2 pfm_opt_flags (5), /* identifies use of "pfm_opt_sw (1-5)" close flags */ 8 23 3 flag_name char (32), /* name of flag */ 8 24 3 flag_ant_name char (32), /* antonym name */ 8 25 2 pfm_opt_value_name (5) char (32), /* identifies use of "pfm_opt_value (1-5)" */ 8 26 2 pfm_opt_str_name (5) char (32); /* identifies use of "pfm_opt_str (1-5)" */ 8 27 8 28 /* END INCLUDE FILE mtape_pfm_info.incl.pl1 */ 1 17 1 18 9 1 /* BEGIN INCLUDE FILE mtape_open_close_info.incl.pl1. Created by J. A. Bush 06/13/83 */ 9 2 /* format: style4 */ 9 3 9 4 dcl moip ptr; /* Pointer to mtape_open_info structure */ 9 5 dcl mcip ptr; /* Pointer to mtape_close_info structure */ 9 6 9 7 dcl mtape_open_info_version_1 char (8) int static options (constant) init ("moiv0001"); 9 8 dcl mtape_close_info_version_1 char (8) int static options (constant) init ("mciv0001"); 9 9 9 10 dcl 1 mtape_open_info aligned based (moip), 9 11 2 version char (8), /* Current structure version */ 9 12 2 cs_ptr ptr, /* Pointer to arg processing control structure */ 9 13 2 cal_ptr ptr, /* Pointer to arg processing ctl arg list */ 9 14 2 so_ptr ptr, /* Pointer to last saved iox_ options */ 9 15 2 open_mode fixed bin, /* iox_ opening mode */ 9 16 2 comment char (80), /* Display on user_output after open */ 9 17 2 expiration char (24), /* File expiration date */ 9 18 2 file_format char (3), /* File format code */ 9 19 2 recording_mode char (6), /* Ascii, ebcdic, or binary */ 9 20 2 file_name char (32), /* Name of file to be recorded */ 9 21 2 replace_id char (32), /* Name of file to replace */ 9 22 2 init_to_zero, /* Enables clearing rest of structure */ 9 23 3 block_length fixed bin (35), /* Block size in bytes */ 9 24 3 record_length fixed bin (35), /* Record length specified by user */ 9 25 3 default_span_rlen fixed bin (35), /* Default record length for spanned records */ 9 26 3 default_var_rlen fixed bin (35), /* Default record length for variable records */ 9 27 3 default_fix_rlen fixed bin (35), /* Default record length for fixed records */ 9 28 3 seq_number fixed bin (35), /* File sequence number */ 9 29 3 append bit (1), /* "1"b => append file to end of file set */ 9 30 3 create bit (1), /* "1"b => create this file */ 9 31 3 display bit (1), /* "1"b => display the open description */ 9 32 3 extend bit (1), /* "1"b => extend the current file */ 9 33 3 force bit (1), /* "1"b => disregard file expiration when creating */ 9 34 3 last_file bit (1), /* "1"b => position to last file of file set */ 9 35 3 next_file bit (1), /* "1"b => position to next file of file set */ 9 36 3 modify bit (1), /* "1"b => modify the current file */ 9 37 3 label_entry_present bit (1), T4Jrvabb dmpr_output_: Error on opening dump volume AV0096: Unrecoverable data-transmission error on physical device.$ -T;vabb $ .T;$vabb dmpr_output_:$ /T;$vabb The open operation has failed.$ 0T;5vabb Do you wish to delete the volume from the pool?$ 1T=V>vinc incremental_volume_dumper: Processed pub_01: 0 0 51 12 0$ 2TV}&?vinc incremental_volume_dumper: Processed pub_02: 0 0 205 12 3$ 3Tav>vinc incremental_volume_dumper: Processed pub_03: 0 0 57 20 1$ 4Th->vinc incremental_volume_dumper: Processed pub_04: 0 0 21 11 0$ 5Tq/9>vinc incremental_volume_dumper: Processed pub_05: 0 0 39 15 3$ 6TăWY?vinc incremental_volume_dumper: Processed pub_06: 0 0 173 14 0$ 7Tď=vinc incremental_volume_dumper: Processed pub_07: 0 0 70 9 1$ 8Tĥ?vinc incremental_volume_dumper: Processed pub_08: 0 0 122 16 0$ 9TĪG<vinc incremental_volume_dumper: Processed abb01: 0 0 1 1 13$ :TIJM=vinc incremental_volume_dumper: Processed abb02: 0 0 20 8 18$ ;Tu=vinc incremental_volume_dumper: Processed abb03: 0 0 57 8 17$ <T>vinc incremental_volume_dumper: Processed abb04: 0 0 23 10 14$ =TѺa=vinc incremental_volume_dumper: Processed abb05: 0 0 17 7 12$ >Tؤ=vinc incremental_volume_dumper: Processed abb06: 0 0 16 4 13$ ?T>vinc incremental_volume_dumper: Processed abb07: 0 0 19 13 20$ @T^'=vinc incremental_volume_dumper: Processed abb08: 0 0 13 2 15$ AT͞8vinc incremental_volume_dumper: Dump finished at 1341.0$ BTu6vinc incremental_volume_dumper: Dumper going to sleep$ CT7;vinc incremental_volume_dumper: Dumper waking up at 1341.0$ DT)?vinc incremental_volume_dumper: Processed rpv: 155 51 337 43 4$ ETCvinc incremental_volume_dumper: Processed root_01: 168 55 854 60 3$ FT%q Cvinc incremental_volume_dumper: Processed root_02: 189 64 344 57 0$ GTĝDvinc incremental_volume_dumper: Processed root_03: 115 44 1118 66 3$ HT)Cvinc incremental_volume_dumper: Processed root_04: 121 46 271 40 2$ IT<:vinc incremental_volume_dumper: Processed tr01: 0 0 1 1 0$ JT >vinc incremental_volume_dumper: Processed bull01: 0 0 119 2 5$ KTc<vinc incremental_volume_dumper: Processed bull02: 0 0 0 0 1$ LT=vinc incremental_volume_dumper: Processed bull03: 0 0 0 0 12$ MT<vinc incremental_volume_dumper: Processed bull04: 0 0 0 0 9$ NTE><vinc incremental_volume_dumper: Processed bull05: 0 0 0 0 7$ OT<vinc incremental_volume_dumper: Processed pub_01: 0 0 8 4 0$ PT%=vinc incremental_volume_dumper: Processed pub_02: 0 0 53 9 0$ QT/?U>vinc incremental_volume_dumper: Processed pub_03: 0 0 49 14 0$ RT3<=vinc incremental_volume_dumper: Processed pub_04: 0 0 10 6 0$ ST9>>vinc incremental_volume_dumper: Processed pub_05: 0 0 19 10 0$ TTC>vinc incremental_volume_dumper: Processed pub_06: 0 0 110 7 0$ UTI=vinc incremental_volume_dumper: Processed pub_07: 0 0 51 6 0$ VTMs`<vinc incremental_volume_dumper: Processed pub_08: 0 0 8 5 0$ WTO);vinc incremental_volume_dumper: Processed abb01: 0 0 0 0 0$ XTQf;vinc incremental_volume_dumper: Processed abb02: 0 0 5 2 1$ YTTW;vinc incremental_volume_dumper: Processed abb03: 0 0 4 1 0$ ZTV`;vinc incremental_volume_dumper: Processed abb04: 0 0 1 1 0$ [TX:;vinc incremental_volume_dumper: Processed abb05: 0 0 5 2 0$ \TZ 10 46 AT_EOFH init (2), /* Positioned at end of file hdr */ 10 47 AT_BOFD init (3), /* Positioned at beginning of file data */ 10 48 AT_IFD init (4), /* Positioned in file data, not beginning */ 10 49 AT_EOFD init (5), /* Positioned prior to end of data file */ 10 50 AT_BOFT init (6), /* Positioned at beginning of trailer label file */ 10 51 AT_EOFT init (7), /* Positioned at end of trailer label file */ 10 52 AT_EOF init (8), /* Positioned after trailer labels at EOF */ 10 53 FILES_PER_FILE_GRP init (3) /* # of physical files per file (section) group */ 10 54 ) fixed bin int static options (constant); 10 55 10 56 dcl (BOF_LABEL init (1), /* indicates beginning of file label */ 10 57 EOV_LABEL init (2), /* indicates end of volume label */ 10 58 EOF_LABEL init (3) /* indicates end of file label */ 10 59 ) fixed bin int static options (constant); 10 60 10 61 /* user query constant codes */ 10 62 10 63 dcl (Q_NO_NEXT_VOLUME init (1), 10 64 Q_LABELED_VOLUME init (2), 10 65 Q_UNEXPIRED_VOLUME init (3), 10 66 Q_INCORRECT_VOLUME init (4), 10 67 Q_UNEXPIRED_FILE init (5), 10 68 Q_ABORT_FILE init (6) 10 69 ) fixed bin int static options (constant); 10 70 10 71 /* END INCLUDE FILE mtape_constants.incl.pl1 */ 1 21 1 22 11 1 /* BEGIN INCLUDE FILE mtape_dcls.incl.pl1. Created by J. A. Bush 04/20/83 */ 11 2 /* format: style4 */ 11 3 11 4 /* Usage: call mtape_$alloc (mtdp, type, link_tail, length, alloc_ptr); */ 11 5 dcl mtape_$alloc entry (ptr, fixed bin, ptr, fixed bin (21), ptr); 11 6 11 7 /* Usage: call mtape_$allocate_buffers (mtdp, block_size, code); */ 11 8 dcl mtape_$allocate_buffers entry (ptr, fixed bin (21), fixed bin (35)); 11 9 11 10 /* Usage: call mtape_$demount (mtdp, code); 11 11*dcl mtape_$demount entry (ptr, fixed bin (35)); 11 12* 11 13*/* Usage: call mtape_$error (mtdp, code, ioa_cntl_string, arguments); */ 11 14 dcl mtape_$error entry options (variable); 11 15 11 16 /* Usage: call mtape_$flush_buffers (mtdp, code); */ 11 17 dcl mtape_$flush_buffers entry (ptr, fixed bin (35)); 11 18 11 19 /* Usage: call mtape_$mount (mtdp, code); 11 20*dcl mtape_$mount entry (ptr, fixed bin (35)); 11 21*/* Usage: call mtape_$order (mtdp, mnemonic, repeat_count, info_ptr, code); */ 11 22 dcl mtape_$order entry (ptr, char (*), fixed bin, ptr, fixed bin (35)); 11 23 11 24 /* Usage: call mtape_$read_block (mtdp, code); */ 11 25 dcl mtape_$read_block entry (ptr, fixed bin (35)); 11 26 11 27 /* Usage: call mtape_$read_label (mtdp, lr_ptr, code); */ 11 28 dcl mtape_$read_label entry (ptr, ptr, fixed bin (35)); 11 29 11 30 /* Usage: call mtape_$set_mode (mtdp, mode, mode_index, mode_ptr, code); */ 11 31 dcl mtape_$set_mode entry (ptr, char (*), fixed bin, ptr, fixed bin (35)); 11 32 11 33 /* Usage: call mtape_$stop_tape (mtdp, code); */ 11 34 dcl mtape_$stop_tape entry (ptr, fixed bin (35)); 11 35 11 36 /* Usage: call mtape_$user_query (mtdp, query_code, code); */ 11 37 dcl mtape_$user_query entry (ptr, fixed bin, fixed bin (35)); 11 38 11 39 /* Usage: call mtape_$volume_switch (mtdp, new_vs_ptr, code); */ 11 40 dcl mtape_$volume_switch entry (ptr, ptr, fixed bin (35)); 11 41 11 42 /* Usage: call mtape_$write_block (mtdp, code); */ 11 43 dcl mtape_$write_block entry (ptr, fixed bin (35)); 11 44 11 45 /* Usage: call mtape_$write_label (mtdp, lr_ptr, code); */ 11 46 dcl mtape_$write_label entry (ptr, ptr, fixed bin (35)); 11 47 11 48 /* Usage: call pfm_utils_$file_search (mtdp, fi_ptr, vs_ptr, code); */ 11 49 dcl pfm_utils_$file_search entry (ptr, ptr, ptr, fixed bin (35)); 11 50 11 51 /* Usage: call pfm_utils_$init_label_record (mtdp, link_tail, link_head, lr_ptr, length); */ 11 52 dcl pfm_utils_$init_label_record entry (ptr, ptr, ptr, ptr, fixed bin (21)); 11 53 11 54 /* Usage: blk_yyddd = pfm_utils_$julian_date (date_time_string); */ 11 55 dcl pfm_utils_$julian_date entry (char (*)) returns (char (6)); 11 56 11 57 /* Usage: call pfm_utils_$position_in_file (mtdp, fi_ptr, vs_ptr, position_constant, code); */ 11 58 dcl pfm_utils_$position_in_file entry (ptr, ptr, ptr, fixed bin, fixed bin (35)); 11 59 11 60 /* Usage: call pfm_utils_$read_file_labels (mtdp, fi_ptr, vs_ptr, label_type, code); */ 11 61 dcl pfm_utils_$read_file_labels entry (ptr, ptr, ptr, fixed bin, fixed bin (35)); 11 62 11 63 /* Usage: call pfm_utils_$setup_file (mtdp, fi_ptr, new_section); */ 11 64 dcl pfm_utils_$setup_file entry (ptr, ptr, bit (1) aligned); 11 65 11 66 /* Usage: call pfm_utils_$truncate_file_set (mtdp); */ 11 67 dcl pfm_utils_$truncate_file_set entry (ptr); 11 68 11 69 /* Usage: call pfm_utils_$write_file_labels (mtdp, label_type, code); */ 11 70 dcl pfm_utils_$write_file_labels entry (ptr, fixed bin, fixed bin (35)); 11 71 11 72 /* END INCLUDE FILE mtape_dcls.incl.pl1 */ 1 23 1 24 1 25 /* END INCLUDE FILE mtape_includes.incl.pl1 */ 136 137 12 1 /* --------------- BEGIN include file rcp_volume_formats.incl.pl1 --------------- */ 12 2 12 3 12 4 12 5 /****^ HISTORY COMMENTS: 12 6* 1) change(86-12-08,GWMay), approve(86-12-08,PBF7552), 12 7* audit(86-12-08,Martinson), install(86-12-17,MR12.0-1250): 12 8* added array entry 0 to the volume format types to indicate that the tape 12 9* volume was not authenticated by rcp. 12 10* END HISTORY COMMENTS */ 12 11 12 12 12 13 /* General volume types */ 12 14 12 15 dcl (Volume_unauthenticated initial (0), 12 16 Volume_blank initial (1), 12 17 Volume_unknown_format initial (6), 12 18 Volume_unreadable initial (7), 12 19 12 20 /* Tape volume types */ 12 21 12 22 Volume_multics_tape initial (2), 12 23 Volume_gcos_tape initial (3), 12 24 Volume_ibm_tape initial (4), 12 25 Volume_ansi_tape initial (5)) fixed bin static options (constant); 12 26 12 27 /* Printable descriptions of volume types */ 12 28 12 29 dcl Tape_volume_types (0:7) char (16) static options (constant) initial 12 30 ("unauthenticated", 12 31 "blank", 12 32 "Multics", 12 33 "GCOS", 12 34 "IBM", 12 35 "ANSI", 12 36 "unrecognizable", 12 37 "unreadable"); 12 38 12 39 /* ---------------- END include file rcp_volume_formats.incl.pl1 ---------------- */ 138 139 140 end raw_tape_io_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 12/17/86 0832.2 raw_tape_io_.pl1 >special_ldd>install>MR12.0-1250>raw_tape_io_.pl1 136 1 02/16/84 1452.3 mtape_includes.incl.pl1 >ldd>include>mtape_includes.incl.pl1 1-5 2 02/16/84 1452.3 mtape_data.incl.pl1 >ldd>include>mtape_data.incl.pl1 1-7 3 02/16/84 1452.4 mtape_vol_set.incl.pl1 >ldd>include>mtape_vol_set.incl.pl1 1-9 4 02/16/84 1452.3 mtape_label_record.incl.pl1 >ldd>include>mtape_label_record.incl.pl1 1-11 5 02/16/84 1452.3 mtape_err_stats.incl.pl1 >ldd>include>mtape_err_stats.incl.pl1 1-13 6 02/16/84 1452.3 mtape_file_info.incl.pl1 >ldd>include>mtape_file_info.incl.pl1 1-15 7 02/16/84 1452.3 mtape_attach_info.incl.pl1 >ldd>include>mtape_attach_info.incl.pl1 1-17 8 02/16/84 1452.4 mtape_pfm_info.incl.pl1 >ldd>include>mtape_pfm_info.incl.pl1 1-19 9 06/11/85 1429.6 mtape_open_close_info.incl.pl1 >ldd>include>mtape_open_close_info.in Mounting tape AV0096 for writing$ ˕Tژs:vabb Mounted unreadable volume "AV0096" on device tapa_01$ ˖Tޕ7=vabb complete_volume_dump: Processed abb05: 0 0 48576 6510 0$ ˗TޚWGFvabb purge_volume_log_: Output volume AV0091 is now available for use$ ˘Tޜ9-Fvabb purge_volume_log_: Output volume AV0118 is now available for use$ ˙TޣFvabb purge_volume_log_: Output volume AV0082 is now available for use$ ˚Tޣ3[vabb purge_volume_log_: Volume log abb05.volog purged. Entry count changed from 152 to 124$ ˛TޣS?vabb complete_volume_dump: Begin dump of physical volume abb06$ ˜T3vabb dmpr_output_: Finished AV0096: 0 0 25243 3079$ ˝Tr&vabb Mounting tape AV0014 for writing$ ˞Tw:vabb Mounted unreadable volume "AV0014" on device tapa_01$ ˟To3vabb dmpr_output_: Finished AV0014: 0 0 25419 3700$ ˠT?b&vabb Mounting tape AV0091 for writing$ ˡTVBjjvabb dmpr_output_: Unable to attach dump volume AV0091.: The Operator refused to honor the mount request.$ ˢTVvabb $ ˣTVMvabb dmpr_output_:$ ˤTVo+vabb Do you wish to re-try the attachment?$ ˥TSvinc r 16:31 1.630 59$ ˦T]vinc $ ˧TPvinc incremental_volume_dumper: Please get the following volumes: AV0118 AV0082$ ˨T:w&vinc Mounting tape AV0118 for writing$ ˩Tm\Ovinc Mounted Multics volume "AV0118" (recorded at 6250 BPI), on device tapa_00$ ˪Tm&vinc Mounting tape AV0082 for writing$ ˫TFOvinc Mounted Multics volume "AV0082" (recorded at 6250 BPI), on device tapa_01$ ˬT!C?vinc incremental_volume_dumper: Processed rpv: 176 52 458 47 7$ ˭TCvinc incremental_volume_dumper: Processed root_01: 171 55 920 64 5$ ˮTGCvinc incremental_volume_dumper: Processed root_02: 177 65 352 59 0$ ˯TDvinc incremental_volume_dumper: Processed root_03: 138 48 1061 68 4$ ˰TJCvinc incremental_volume_dumper: Processed root_04: 189 53 310 47 3$ ˱T%;vinc incremental_volume_dumper: Processed tr01: 0 0 1 1 57$ ˲TUD?vinc incremental_volume_dumper: Processed bull01: 0 0 119 2 18$ ˳T<vinc incremental_volume_dumper: Processed bull02: 0 0 2 2 8$ ˴Tz!=vinc incremental_volume_dumper: Processed bull03: 0 0 0 0 13$ ˵T=vinc incremental_volume_dumper: Processed bull04: 0 0 0 0 16$ ˶T=vinc incremental_volume_dumper: Processed bull05: 0 0 0 0 32$ ˷T#=vinc incremental_volume_dumper: Processed pub_01: 0 0 31 7 0$ ˸TD?vinc incremental_volume_dumper: Processed pub_02: 0 0 199 13 1$ ˹T_О?vinc incremental_volume_dumper: Processed pub_03: 0 0 144 21 0$ ˺Tm>vinc incremental_volume_dumper: Processed pub_04: 0 0 61 11 0$ ˻Tya>vinc incremental_volume_dumper: Processed pub_05: 0 0 29 16 0$ ˼T?vinc incremental_volume_dumper: Processed pub_06: 0 0 149 13 0$ ˽Tl=vinc incremental_volume_dumper: Processed pub_07: 0 0 41 5 0$ ˾T9>vinc incremental_volume_dumper: Processed pub_08: 0 0 82 13 0$ ˿Ty<vinc incremental_volume_dumper: Processed abb01: 0 0 30 1 3$ T;vinc incremental_volume_dumper: Processed abb02: 0 0 0 0 2$ T;vinc incremental_volume_dumper: Processed abb03: 0 0 2 2 2$ T?;vinc incremental_volume_dumper: Processed abb04: 0 0 7 2 1$ Tr<vinc incremental_volume_dumper: Processed abb05: 0 0 91 3 2$ T=vinc incremental_volume_dumper: Processed abb06: 0 0 159 3 3$ T<vinc incremental_volume 000110 automatic pointer dcl 3-5 set ref 127* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. AT_BOFD internal static fixed bin(17,0) initial dcl 10-44 AT_BOFH internal static fixed bin(17,0) initial dcl 10-44 AT_BOFT internal static fixed bin(17,0) initial dcl 10-44 AT_EOF internal static fixed bin(17,0) initial dcl 10-44 AT_EOFD internal static fixed bin(17,0) initial dcl 10-44 AT_EOFH internal static fixed bin(17,0) initial dcl 10-44 AT_EOFT internal static fixed bin(17,0) initial dcl 10-44 AT_IFD internal static fixed bin(17,0) initial dcl 10-44 BLANK_VOLUME internal static fixed bin(17,0) initial dcl 3-42 BOF_LABEL internal static fixed bin(17,0) initial dcl 10-56 EOF_LABEL internal static fixed bin(17,0) initial dcl 10-56 EOV_LABEL internal static fixed bin(17,0) initial dcl 10-56 FILES_PER_FILE_GRP internal static fixed bin(17,0) initial dcl 10-44 MTAPE_ALLOC_FI internal static fixed bin(17,0) initial dcl 10-9 MTAPE_ALLOC_LR internal static fixed bin(17,0) initial dcl 10-9 MTAPE_ALLOC_STR internal static fixed bin(17,0) initial dcl 10-9 MTAPE_ALLOC_VS internal static fixed bin(17,0) initial dcl 10-9 MTAPE_CV_BCD internal static fixed bin(17,0) initial dcl 10-34 MTAPE_CV_EBCDIC internal static fixed bin(17,0) initial dcl 10-34 MTAPE_CV_UC_ASCII internal static fixed bin(17,0) initial dcl 10-34 MTAPE_CV_UC_EBCDIC internal static fixed bin(17,0) initial dcl 10-34 MTAPE_HWM_BCD internal static fixed bin(17,0) initial dcl 10-27 MTAPE_HWM_BIN internal static fixed bin(17,0) initial dcl 10-27 MTAPE_HWM_NINE internal static fixed bin(17,0) initial dcl 10-27 MTAPE_NO_CONVERSION internal static fixed bin(17,0) initial dcl 10-34 MTAPE_SPEED_VALUES internal static fixed bin(17,0) initial array dcl 10-22 MTAPE_UNSPECIFIED internal static fixed bin(17,0) initial dcl 10-34 MTAPE_VALID_DENSITIES internal static fixed bin(17,0) initial array dcl 10-17 MTAPE_VOLUME internal static fixed bin(17,0) initial dcl 3-42 MULT_PRIOR_VOLUME internal static fixed bin(17,0) initial dcl 3-42 NON_MULT_VOLUME internal static fixed bin(17,0) initial dcl 3-42 NOT_POSITIONED_IN_FILE internal static fixed bin(17,0) initial dcl 10-44 Q_ABORT_FILE internal static fixed bin(17,0) initial dcl 10-63 Q_INCORRECT_VOLUME internal static fixed bin(17,0) initial dcl 10-63 Q_LABELED_VOLUME internal static fixed bin(17,0) initial dcl 10-63 Q_NO_NEXT_VOLUME internal static fixed bin(17,0) initial dcl 10-63 Q_UNEXPIRED_FILE internal static fixed bin(17,0) initial dcl 10-63 Q_UNEXPIRED_VOLUME internal static fixed bin(17,0) initial dcl 10-63 RECOG_FORMAT_VOLUME internal static fixed bin(17,0) initial dcl 3-42 Tape_volume_types internal static char(16) initial array unaligned dcl 12-29 UNLABELED_VOLUME internal static fixed bin(17,0) initial dcl 3-42 Volume_ansi_tape internal static fixed bin(17,0) initial dcl 12-15 Volume_blank internal static fixed bin(17,0) initial dcl 12-15 Volume_gcos_tape internal static fixed bin(17,0) initial dcl 12-15 Volume_ibm_tape internal static fixed bin(17,0) initial dcl 12-15 Volume_multics_tape internal static fixed bin(17,0) initial dcl 12-15 Volume_unauthenticated internal static fixed bin(17,0) initial dcl 12-15 Volume_unknown_format internal static fixed bin(17,0) initial dcl 12-15 Volume_unreadable internal static fixed bin(17,0) initial dcl 12-15 all_buf_lens based fixed bin(21,0) array dcl 2-114 all_buf_ptrs based pointer array dcl 2-113 es_ptr automatic pointer dcl 5-4 lr_ptr automatic pointer dcl 4-4 mcip automatic pointer dcl 9-5 mtape_$alloc 000000 constant entry external dcl 11-5 mtape_$allocate_buffers 000000 constant entry external dcl 11-8 mtape_$flush_buffers 000000 constant entry external dcl 11-17 mtape_$order 000000 constant entry external dcl 11-22 mtape_$read_block 000000 constant entry external dcl 11-25 mtape_$read_label 000000 constant entry external dcl 11-28 mtape_$set_mode 000000 constant entry external dcl 11-31 mtape_$stop_tape 000000 constant entry external dcl 11-34 mtape_$user_query 000000 constant entry external dcl 11-37 mtape_$volume_switch 000000 constant entry external dcl 11-40 mtape_$write_block 000000 constant entry external dcl 11-43 mtape_$write_label 000000 constant entry external dcl 11-46 mtape_attach_info based structure level 1 dcl 7-8 mtape_attach_info_version_1 internal static char(8) initial unaligned dcl 7-6 mtape_close_info based structure level 1 dcl 9-41 mtape_close_info_version_1 internal static char(8) initial unaligned dcl 9-8 mtape_data_version_1 internal static char(8) initial unaligned dcl 2-6 mtape_fi_version_1 internal static char(8) initial unaligned dcl 6-6 mtape_file_info based structure level 1 dcl 6-8 mtape_label_record based structure level 1 dcl 4-8 mtape_lr_version_1 internal static char(8) initial unaligned dcl 4-6 mtape_open_info based structure level 1 dcl 9-10 mtape_open_info_version_1 internal static char(8) initial unaligned dcl 9-7 mtape_pfm_info based structure level 1 dcl 8-8 mtape_pfm_info_version_1 internal static char(8) initial unaligned dcl 8-6 mtape_vol_set based structure level 1 dcl 3-9 mtape_vs_version_1 internal static char(8) initial unaligned dcl 3-7 pfm_utils_$file_search 000000 constant entry external dcl 11-49 pfm_utils_$init_label_record 000000 constant entry external dcl 11-52 pfm_utils_$julian_date 000000 constant entry external dcl 11-55 pfm_utils_$position_in_file 000000 constant entry external dcl 11-58 pfm_utils_$read_file_labels 000000 constant entry external dcl 11-61 pfm_utils_$setup_file 000000 constant entry external dcl 11-64 pfm_utils_$truncate_file_set 000000 constant entry external dcl 11-67 pfm_utils_$write_file_labels 000000 constant entry external dcl 11-70 rec_len automatic fixed bin(21,0) dcl 43 tape_blk based char(1) array unaligned dcl 2-115 NAMES DECLARED BY EXPLICIT CONTEXT. SETUP 000266 constant entry internal dcl 124 ref 62 74 82 107 113 119 decode_file_labels 000234 constant entry external dcl 111 encode_file_labels 000254 constant entry external dcl 117 file_close 000122 constant entry external dcl 80 file_open 000106 constant entry external dcl 72 order 000207 constant entry external dcl 105 pfm_init 000042 constant entry external dcl 60 raw_tape_io_ 000030 constant entry external dcl 6 read 000136 constant entry external dcl 87 write 000161 constant entry external dcl 96 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 442 456 310 452 Length 1114 310 14 421 132 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME raw_tape_io_ 123 external procedure is an external procedure. SETUP internal procedure shares stack frame of external procedure raw_tape_io_. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME raw_tape_io_ 000100 code raw_tape_io_ 000102 buf_ptr raw_tape_io_ 000104 buf_len raw_tape_io_ 000106 mtdp raw_tape_io_ 000110 vs_ptr raw_tape_io_ 000112 fi_ptr raw_tape_io_ 000114 maip raw_tape_io_ 000116 mpfmip raw_tape_io_ 000120 moip raw_tape_io_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc return_mac ext_entry ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. mtape_$error THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$unimplemented_version LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 6 000027 60 000035 62 000052 63 000053 64 000056 66 000101 67 000103 72 000104 74 000116 75 000117 80 000120 82 000132 83 000133 87 000134 89 000146 90 000152 91 000154 92 000156 96 000157 98 000171 99 000175 100 000177 101 000201 105 000202 107 000225 107 000226 111 000227 113 000244 113 000245 117 000246 119 000264 120 000265 124 000266 126 000267 127 000273 128 000275 129 000277 130 000301 131 000303 132 000305 134 000307 ----------------------------------------------------------- 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