Reading raw characters under VMS from fortran

Jerry Leichter leichter at yale-com.UUCP
Tue Feb 7 06:38:59 AEST 1984


The literal equivalent of stty raw for VMS is SET TERMINAL/PASSALL; to
turn the terminal back to normal mode again, use SET TERMINAL/NOPASSALL.
(INTERACTIVE is equivalent to NOPASSALL).  Often the easiest way to do
this is to build a command procedure to do the SET TERMINAL's, and call
up the progra.

Note that a terminal in PASSALL mode is STILL "record oriented"; it will
not necessarily return stuff a byte at a time.

A program can set the terminal to PASSALL mode directly, and further it
can do it on an I/O-request at a time basis - except for "immediate-
action" characters, like CTRL/Y - since VMS has a true full-duplex characters;
no interpretation (except for immediate action - technically "out of band"
characters) gets done until the program tries to read them.

It isn't hard, though it is quite tricky if you've never done that sort
of stuff before, to do the required QIO calls, either in MACRO or directly
from FORTRAN.  Or, you can actually get the code to do it out of the
DECUS C support library (function kbin() in VAXLIB, the VAX-11C compatibility
library).  kbin() doesn't do PASSALL manipulation, but that would be easy
to change.
							-- Jerry



More information about the Comp.unix.wizards mailing list