/* BEGIN INCLUDE FILE ... tcb.incl.pl1 */ /* Date Last Modified and Reason Created 04/19/77 by J. Stern (from part of tty.incl.pl1) Modified 2/6/78 by Robert Coren to add input_msg_size Modified 4/18/78 by Robert Coren to add framing_chars Modified 8/31/78 by J. Nicholls to add scroll mode Extracted 9/12/78 by J. Stern from tty_data.incl.pl1 Modified Oct.1979 by Robert Coren to expand to 36 possible modes Modified 1/21/80 by Robert Coren to add no_outp, oddp, & eight_bit modes Modified 10/08/80 by Robert Coren to add meters for tty_read & tty_write Modified: 10 November 1980 by G. Palter to add can_type and explicit padding Modified 12/04/80 by Robert Coren to add saved copy of meters Modified 2/24/81 by Robert Coren to add time spent in tty_read and _write Modified April 1981 by Robert Coren to add time last dialed up */ dcl tcbp ptr; dcl 1 tcb based (tcbp) aligned, /* declaration of per terminal control block */ 2 terminal_type char (32) unaligned, /* terminal type name */ 2 tables, 3 input_mvtrp bit (18) unaligned, /* rel pointer to current input mvt table */ 3 output_mvtrp bit (18) unaligned, /* rel pointer to current output mvt table */ 3 input_tctrp bit (18) unaligned, /* rel pointer to current input tct table */ 3 output_tctrp bit (18) unaligned, /* rel pointer to current output tct table */ 3 specialrp bit (18) unaligned, /* rel pointer to current special chars table */ 3 delayrp bit (18) unaligned, /* rel pointer to current delay table */ 2 default_tables, 3 df_input_mvtrp bit (18) unaligned, /* rel pointer to default input mvt table */ 3 df_output_mvtrp bit (18) unaligned, /* rel pointer to default output mvt table */ 3 df_input_tctrp bit (18) unaligned, /* rel pointer to default input tct table */ 3 df_output_tctrp bit (18) unaligned, /* rel pointer to default output tct table */ 3 df_specialrp bit (18) unaligned, /* rel pointer to default special chars table */ 3 df_delayrp bit (18) unaligned, /* rel pointer to default delay table */ 2 special_input_chars unaligned, 3 erase char (1) unaligned, /* erase character */ 3 kill char (1) unaligned, /* kill character */ 2 old_type fixed bin (17) unaligned, /* old terminal type number */ 2 modes unaligned, /* modes set by order call */ 3 edited bit (1) unaligned, /* edited output mode */ 3 tabm bit (1) unaligned, /* insert output tabs mode */ 3 canm bit (1) unaligned, /* do canonical form conversion */ 3 escm bit (1) unaligned, /* do input escape conversions */ 3 erklm bit (1) unaligned, /* do erase kill processing */ 3 rawim bit (1) unaligned, /* don't convert input */ 3 rawom bit (1) unaligned, /* don't convert output */ 3 redm bit (1) unaligned, /* has red-shift function */ 3 vertsp bit (1) unaligned, /* send real ff's and vt's if on, else escape them */ 3 echo_cr bit (1) unaligned, /* echo carriage returns */ 3 echo_lf bit (1) unaligned, /* echo line feeds */ 3 echo_tab bit (1) unaligned, /* echo tabs */ 3 hndlquit bit (1) unaligned, /* cr's on quit */ 3 full_duplex bit (1) unaligned, /* xmit and receive simultaneously */ 3 echoplex bit (1) unaligned, /* echo input characters on terminal */ 3 upper_case bit (1) unaligned, /* map lower-case output into upper-case */ 3 replay bit (1) unaligned, /* replay interrupted input */ 3 polite bit (1) unaligned, /* output must start at left margin */ 3 control bit (1) unaligned, /* accept control characters */ 3 blk_xfer bit (1) unaligned, /* block transfer or "frame" mode */ 3 breakall bit (1) unaligned, /* break on all characters */ 3 scroll bit (1) unaligned, /* scroll mode for crt terminals */ 3 prefixnl bit (1) unaligned, /* prefix output iwth nl when input interrupted */ 3 wake_tbl bit (1) unaligned, /* input wakeups determined by wakeup table */ 3 iflow bit (1) unaligned, /* input flow control */ 3 oflow bit (1) unaligned, /* output flow control */ 3 no_outp bit (1) unaligned, /* don't generate output parity */ 3 eight_bit bit (1) unaligned, /* don't strip input parity */ 3 odd_parity bit (1) unaligned, /* generate odd parity (if any) */ 3 modes_pad bit (7) unaligned, 2 id char (4) unaligned, /* terminal id */ 2 colmax fixed bin (8) unaligned, /* current maximum number of columns */ 2 linemax fixed bin (8) unaligned, /* current maximum number of lines/frame */ 2 wrt_lchar fixed bin (17) unaligned, /* char within last write block */ 2 input_msg_size fixed bin, /* maximum input message size in chars */ 2 framing_chars unaligned, 3 frame_begin char (1) unaligned, /* frame-begin character */ 3 frame_end char (1) unaligned, /* frame-end character */ 2 max_output_block fixed bin (18) unsigned unaligned, /* maximum size of output block in block_acknowledge */ 2 input_suspend_seq unaligned, /* sequence for input suspension */ 3 count fixed bin (9) unsigned, 3 chars char (3), 2 input_resume_seq unaligned, /* likewise for input resumption */ 3 count fixed bin (9) unsigned, 3 chars char (3), 2 output_suspend_etb_seq unaligned, /* sequence for output suspension or end_of_block */ 3 count fixed bin (9) unsigned, 3 chars char (3), 2 output_resume_ack_seq unaligned, /* likewise for resumption or ack */ 3 count fixed bin (9) unsigned, 3 chars char (3), 2 flags unaligned, /* tty dim flag bits */ 3 breakall_enabled bit (1) unaligned, /* channel is permitted to use breakall mode */ 3 dont_count_next bit (1) unaligned, /* next output character is escaped */ 3 keyboard_locking bit (1) unaligned, /* ON if doing keybd locking for ASCIi line type */ 3 no_printer_off bit (1) unaligned, /* reject printer_off/printer_on orders */ 3 break_char_pending bit (1) unaligned, /* break character is in preconverted buffer */ 3 uproc_attached bit (1) unaligned, /* user process has attached device */ 3 block_acknowledge bit (1) unaligned, /* block acknowledgement output protocol */ 3 flags_pad bit (27) unaligned, 2 actshift bit (2) unaligned, /* tty shift, 00 none, 01 lower, 10 upper, 11 unknown */ 2 cumulative_meters, /* continuously running meters */ 3 read_calls fixed bin (35), /* number of calls to tty_read */ 3 write_calls fixed bin (35), /* number of calls to tty_write */ 3 read_chars fixed bin (35), /* after conversion */ 3 write_chars fixed bin (35), /* before conversion */ 3 read_time fixed bin (71), /* total time spent in tty_read */ 3 write_time fixed bin (71), /* total time spent in tty_write */ 2 saved_meters like tcb.cumulative_meters, /* meters saved at last dialup */ 2 can_type fixed binary (9) unaligned unsigned, /* type of canonicalization to use on this channel */ 2 pad1 bit (27) unaligned, /* to word boundary */ 2 time_dialed fixed bin (71); /* clock time of last copy_meters order */ /* END INCLUDE FILE ... tcb.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 */