Asynchronous Terminals and Printer Processes Programming Manual

TERMINAL PROGRAMMING CONSIDERATIONS
Conversational Mode
Conversational Mode
In conversational mode, ATP6100 and TERMPROCESS accept characters
as they are entered by the terminal operator. When read
termination occurs, data is passed to the application. After
read termination occurs, a sequence that controls line spacing
can be sent to the terminal.
To place a terminal in a mode in which no line spacing occurs
after writing and the cursor is positioned after the last
character written, make the following call to SETMODE:
LITERAL SET^SPACE = 6, ! setmode, set spacing mode
SPACE = 1, ! spacing mode = single space
NO^SPACE = 0; ! spacing mode = no space
.
.
CALL SETMODE ( HOME^TERM^NUM, SET^SPACE, NO^SPACE );
When using no spacing for overprinting on a hard-copy terminal,
you must append a carriage return to the data:
STRING .BUFFER [0:71] := [ "WHAT EVER HAPPENED TO", %015 ];
.
.
CALL WRITE ( HOME^TERM^NUM, BUFFER, 22, NUM^WRITTEN );
Because the application, instead of the file system, supplies the
carriage return, you may need to call the DELAY procedure or to
send a number of null characters to give the terminal time to
perform the carriage return. For nowait I/O, you must use null
characters.
To cause a top-of-form advance on a hard-copy terminal, use the
following call to CONTROL:
LITERAL FORMS^CONT = 1,
FORM^FEED = 0;
.
.
CALL CONTROL ( HOME^TERM^NUM, FORMS^CONT, FORM^FEED );
After the call to CONTROL, the file system automatically delays
subsequent access to the terminal for the length of time
specified by the DELAYTIME SYSGEN modifier. If the configured
delay is not long enough, the application program can issue a
4-3