![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: I have been unsuccessful in trying to disable the BREAK key (F5) from OpenVMS. I am able to get the Reflection Terminal to disable the BREAK by either de-selecting the "ENABLE BREAK" option or de-mapping the BREAK key from the reflections mapping tool, bu t I need to do it from VMS ( and without affecting any other control char AST's). I was hoping there was something similiar to SET NOCONTROL=Y to disable the CTRL-Y AST but I couldn't find anything. I then tried using the LIB$DISABLE_CTRL function, but i t will only disable CTRL-Y or CTRL-T. My next attempt is to try using the IO$_SETMODE!IO$M_OUTBAND function in a SYS$QIOW call and passing 0 into P1 to cancel the service. By using Multinet's TCPDUMP, I am pretty sure the the Out-of-Band control character (being sent by reflections) for BREAK is %xFF. %xF3 is also passed, but the terminal driver just displays the character for it (lowercase 'o' with acute accent). Basically, I want to cancel the AST for the Out-of-Band character %xFF (If %xFF is actually correct). If any of this makes sense, am I on the right track? If there is an easier way to disable the BREAK key from VMS, how do I do it? If I am on the right track (with SYS$QIOW), can you shed any light on how I should use the SYS$QIOW call? Any progr amming I do, will be using VAX-C. Thanks in advance for any help you can give. I have spent the last week searching for a documented method for diabling the BREAK key, but I havn't been successful. The Answer is : Please see the OpenVMS FAQ for a discussion of the BREAK "character". (A BREAK "character" is effectively a deliberately-generated serial line framing error. There is no actual ASCII character associated with a BREAK, which is why the phrase "BREAK signal" is often used in various discussions. How the terminal emulator chooses to try to communicate this -- unless it is via the BREAK signal -- with the host system is entirely up to the emulator, and OpenVMS itself is not particularly involved.) No part of OpenVMS is particularly interested in receiving a BREAK signal (with the exception of the SECURE_SERVER support -- this is the SET TERMINAL/SECURE_SERVER command and related), though the same cannot be said for the console hardware. Certain system consoles are expressly designed to detect and act on the BREAK signal (or a spurious serial line framing error) long before the OpenVMS drivers would ever see the BREAK. This BREAK detection processing is expressly performed in the console hardware. The usual mechanism for disabling BREAK involves a console command, or moving the serial connection off the console. (Some system consoles use BREAK, some use CTRL/P, some can use both, and a few can select which. Some can selectively disable BREAK by disabling the processing of BREAK via the console setup, and all can disable the processing of BREAK by moving the communications off the serial console line...) As for the configuration, behaviour, or the particular settings of a PC terminal emulator, that is outside the usual purview of the OpenVMS Wizard -- such questions are best directed to the particular Wizard supporting the PC terminal emulator package. VAX C was replaced by DEC C (now known as Compaq C) back in 1994. Please upgrade.
|