03/19/85 tc_io_ The tc_io_ I/O module supports terminal independent I/O to the screen of a video terminal. Entry points in this module are not called directly by users; rather, the module is accessed through the I/O system interfaces iox_. Attach Description: tc_io_ {device} {-control_args} Arguments: device is the channel name of the device to be attached If a device is not given, the -login_channel control argument must be given. Control arguments: -login_channel specifies attachment to the user's primary login channel. If a device is not specified, then the user's login channel is used. This control argument flags this switch for reconnection by the process disconnection facility. If the user's login device should hang up, this switch will be automatically closed, detached, attached, and opened on the user's new login channel when the user reconnects, if permission to use this facility is specified in the SAT and PDT for the user. -destination DESTINATION specifies that the attached device is to be called using the address DESTINATION. In the case of telephone auto_call lines, DESTINATION is the telephone number to be dialed. -no_block specifies that the device is to be managed asynchronously. The tty_ subroutine will not block to wait for input to be available or output space to be available. This control argument should not be used on the login channel, because it will cause the command listener to loop calling get_chars. -no_hangup_on_detach prevents the detach entry point from hanging up the device. This is not meaningful for the login channel. -hangup_on_detach causes the detach entry point to hang up the device automatically. This is not meaningful for the login channel. Open Operation: Opens the module for stream_input_output. Get Line Operation: The get_line operation is not supported. Control Operation: The following control orders are supported: clear_screen clears the entire terminal screen. The info_ptr is null. It is intended for use when the screen image may have been damaged due to communications problems, for example. get_capabilities returns information about the capabilities of the terminal. The info structure is described in the description of the "get_capabilities" control order in the window_io_ module. get_break_table returns the current break table. The info pointer should point to a break table, declared in window_control_info.incl.pl1. set_break_table sets the break table. The info pointer should point to a break table as defined by the get_break_table order, above. By default, the break table has "1"b for all nonprintable characters, and "0"b elsewhere. Applications that set the break table must be careful to reset it afterwards, and establish an appropriate cleanup handler. set_line_speed sets the speed of the terminal's connection to Multics. The info_ptr should point to a fixed binary number representing the line speed in characters per second. Negative line speeds are not allowed. set_term_type changes the terminal type. The info pointer should point to a set_term_type_info structure. This sets window_status_pending for all windows and sets the ttp_change field in the window_status structure along with the screen_invalid. This operation re-initializes all the terminal specific video system information such as the video sequences, length and width of the screen, and capabilities. It is equivalent to doing "window_call revoke; stty -ttp new_terminal_type; window_call invoke", except no windows are destroyed. The set_term_type_info structure is declared in set_term_type_info.incl.pl1. The send_initial_string, set_modes and ignore_line_type flags are all ignored by the video system. The initial string will always be sent. reconnection determines the new terminal type (which may or may not be the same as before the disconnection). Performs a set_term_type control order to inform the rest of the system of the change in terminal type. If the set_term_type fails then the video_utils_$turn_off_login_channel is invoked in an attempt to re-attach tty_. Reconnection (a field in window_status) is set to indicate to an application doing get_window_status that a reconnection has occurred. The window_status_info structure is declared in window_status.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