/* Begin include file ... tmdb.incl.pl1 * * Created by Bill Silver on 10/20/74 * Modified by J. A. Bush 12/30/80 for bootable tape labels * Modified by J. A. Bush 12/15/81 for re-write of read error recovery * Modified 8/82 by S.Krupp for change from tdcm_ to tape_ioi_ * This include file describes the work variables used by the Multics standard * tape I/O module, tape_mult_. This include file must be used with the include * file: mstr.incl.pl1 */ /****^ HISTORY COMMENTS: 1) change(86-10-13,GWMay), approve(86-10-13,MCR7552), audit(86-10-13,Martinson), install(86-10-20,MR12.0-1189): added fields to the tmdb structure that will add support for the use of rcp in determining the density and format of a tape. END HISTORY COMMENTS */ /* format: style4,delnl,insnl,indattr,ifthen,declareind10,dclind10 */ dcl tmdb_ptr ptr; /* Pointer to tape_mult_ data block. */ dcl 1 tmdb based (tmdb_ptr) aligned, /* tape_mult_ data block. */ 2 attach, /* Attach description. */ 3 length fixed bin, /* Actual length of attach description. */ 3 description char (64), /* Attach description string. */ 2 open, /* Open description. */ 3 length fixed bin, /* Actual length of open description. */ 3 description char (32), /* Open description string. */ 2 opt, /* Attach options. */ 3 flags, /* Flags set from user input and options. */ ( 4 com_err bit (1), /* ON => call com_err_ if there is an error. */ 4 ring bit (1), /* ON => use writ ring, OFF => no write ring. */ 4 system bit (1), /* ON => user wants to be a system process. */ 4 err_tal bit (1), /* ON => user wants error report */ 4 begin bit (1), /* ON => begin processing tape */ 4 write_sw bit (1), /* ON => write allowed */ 4 async_sw bit (1) /* ON => user is prepared for errors to imply that previous put_chars failed. */ ) unaligned, /* ON => user wants error tally displayed on closing */ 3 reel_name char (32) unal, /* Tape reel slot ID. */ 3 volume_set_id char (32) unal, /* volume set name */ 3 mount_mode char (7), /* Mount mode: "writing" or "reading". */ 3 tracks fixed bin, /* Either 9 or 7. */ 3 density fixed bin, /* Either 1600 or 800. */ 3 tbpp ptr, /* If not null, ptr to temp seg containing boot program */ 3 blp ptr, /* Ptr to buffer containing boot label record (READ ONLY) */ 3 speed bit (36), /* bits are 75, 125, 200 ips */ 3 comment char (64), /* User comment to operator. */ 2 head like mstr_header, /* Dummy tape record header. */ 2 trail like mstr_trailer, /* Dummy tape record trailer. */ 2 work, /* Work variables used. */ 3 flags, /* Flags we need that aren't in head.flags. */ ( 4 eod bit (1), /* ON => end of good data. */ 4 eof bit (1), /* ON => End of File. */ 4 bot bit (1), /* ON => beginning of tape */ 4 retry_read bit (1), /* ON => try reread recovery */ 4 read_fwd bit (1), /* ON => want to read forward (recovery) */ 4 fatal_read_error bit (1), /* ON => read error recovery failed. */ 4 data_loss bit (1) /* ON => read something, but with evidence that we lost something */ ) unaligned, 3 rcp_id bit (36), /* Id of current tape drive attachment */ 3 tioi_id bit (36), /* Id of current tape_ioi_ activation */ 3 label_uid bit (72), /* Unique ID of label record. */ 3 label_version fixed bin, /* version of label, returned on read */ 3 output_mode fixed bin, /* output mode tape was written with */ 3 buf_pos fixed bin, /* Current position within current bufffer. */ 3 curr_buf ptr, /* Current buffer being processed. */ 3 next_buf ptr, /* Next buffer to be processed. */ 3 rec_length fixed bin (21), /* Length of data record in characters. */ 3 n_full fixed bin, /* Number of buffers ready to write. */ 3 n_recs_to_eof fixed bin, /* Num recs to write pre eof mark. */ 3 n_bufs fixed bin, /* Total number of buffers. */ 3 bufs_per_subset fixed bin, /* Number of buffers per subset. */ 3 buf_len fixed bin (21), /* Length of a buffer. */ 3 buffer (8) ptr, /* Pointers to a subset of I/O buffers. */ 2 meters, 3 fwd_rd_recovery fixed bin, 3 reposition_recovery fixed bin, 2 channels, 3 rcp fixed bin(71), /* Regular, used by rcp. */ 3 ioi fixed bin(71), /* Fast, used by ioi. */ 2 buffer (1040) fixed bin (35), /* Work buffer (currently used for label I/O). */ 2 volume_density fixed bin, /* either the input from -den or the value */ /* returned by rcp_$check_attach in tape_info */ 2 volume_format char (16); /* determined by rcp_ */ /* End of include file ... tmdb.incl.pl1 */ */ ----------------------------------------------------------- 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 */