next up previous index
Next: Z305 IBM VM/CMS Up: CERNLIB Previous: Z303 Random Access

Z304 General Purpose IBM VM/CMS Non-Graphics Full Screen Interface Package

Routine ID: Z304
Author(s): E. PerottoLibrary: KERNLIB, IBM VM/CMS only
Submitter: Submitted: 03.07.1985
Language: IBM AssemblerRevised:

OBSOLETE

Please note that this routine has been obsoleted in CNL 219. Users are advised not to use it any longer and to replace it in older programs. No maintenance for it will take place and it will eventually disappear.
Suggested replacement: None

This package contains the following routines:

IOSCLR to clear the screen.
IOSSIZ to return the max number of lines supported by the terminal.
IOSPUT to write a line of text to any line on the screen.

Structure:

FUNCTION subprograms
User Entry Names: IOSCLR, IOSSIZ, IOSPUT

Usage:

The variable IRC and the functions IOSCLR, IOSSIZ, and IOSPUT are of type INTEGER.

    IRC = IOSCLR()
will clear the screen of the logged-on VM-CMS terminal if it supports IBM 3270 terminal protocols and set the next free line (see IOSPUT below) to be the first line on the screen, otherwise no action is performed (including for batch execution and line-mode terminals).
IRC
= 0: Operation successful.
= 1: Line was busy, try again.
= -2: CP error, not able to address the terminal.
    IRC = IOSSIZ(LAST)
will interrogate the terminal to find the number of addressable lines. Note that IOSPUT (below) can only address lines 1 to LAST-3 , the last 3 lines having the special logical numbers of 98, 99 and 100.
LAST
( INTEGER) Contains, on exit, the size of the screen in lines.
IRC
= 0: Operation successful.
= 1: Line was busy, try again.
= 2: CP error, not able to address the terminal.
    IRC = IOSPUT(LINE,LENGTH,LINENO)
will display a line of text to the logged-on full screen VM-CMS terminal if it supports IBM 3270 terminal protocols, otherwise no action is performed (including for batch execution and line mode terminals). Any existing lines are entirely replaced when addressed by IOSPUT. IOSPUT maintains internally a current line counter. After a call to IOSCLR this counter is set to one. If IOSCLR is not called first the value used is that last addressed by the operating system +1 . Note that different terminals may have different numbers of lines available. A special set of numbers has been reserved for the 3 lines at the bottom of the screen: 100 for the last line, 99 for the second to last line (the CMS command input line) and 98 for the third to last line (this is normally a protected area containing a CMS prompt or message).
LINE
( CHARACTER) Contains, on entry, an character string (or hollerith array) to be displayed.
LENGTH
( INTEGER) Contains, on entry, the length of the character string (or the number of bytes in the hollerith array). It may be zero. Values greater than the length of a single line result on output as several lines. The "current line" is incremented appropriately.
LINENO
( INTEGER) Controls, on entry, the line to be displayed.
> 0:
Line number on which to display. Between 1 and the last line less 3. A number which does not correspond to a displayable line results in a more prompt. On keying in enter or return, the screen is cleared, the text is displayed on line 1 and the current line is set to line 2.
< 0:
Display on the current line less this value. The current line is reset to the line displayed plus one. If the value is sufficiently negative as to be less than screen line 1 the screen is cleared, text is displayed on line 1 and the current line is set to line 2.
= 98:
The third line from the bottom of the screen. This is usually an area containing a CMS prompt or comment.
= 99:
The second line from the bottom of the screen.
= 100:
The bottom of the screen (the last addressable line).
> 100:
A more prompt is displayed. On keying in enter or return, the screen is cleared, the text is displayed on line 1 and the current line is set to line 2.

Z305



next up previous index
Next: Z305 IBM VM/CMS Up: CERNLIB Previous: Z303 Random Access


Janne Saarela
Mon Apr 3 15:06:23 METDST 1995