Terminal control

The CICS® application programming interface contains two sets of commands for communicating with terminals, terminal control commands and Basic Mapping Support (BMS).

Terminal control interface

Terminal control is the more basic of the two. It gives you flexibility and function, at the cost of more programming. In particular, if you code at the terminal control level, you need to build the device data stream in your application.

Terminal control commands apply to various devices, reducing the sensitivity of programs to the terminals they support and to the access methods controlling the terminals. In addition to the commands themselves, CICS provides the data translation, synchronization of input and output operations, and session control needed to read from or write to a terminal or logical unit. This helps insulate you from the APIs of the individual communications access methods, which are complex and different from one another.

Basic Mapping Support (BMS)

BMS lets you communicate with a terminal at a much higher language level. It formats your data, and you do not need to know the details of the data stream. It is thus easier to code initially and easier to maintain, especially if your application has to support new types of terminal. However, BMS path lengths are longer (BMS itself uses terminal control), and BMS does not support all the terminal types that terminal control does. BMS insulates you even more from the characteristics of particular devices and the mechanics of communication than does terminal control, but at the cost of some flexibility and function. BMS is described in Basic mapping support.

Terminal access method support

CICS Transaction Server supports terminals directly through interfaces to the following access methods:
  • z/OS® Communications Server
  • Basic Graphics Access Method (BGAM) for graphics terminals using GDDM
  • Sequential Access Method (SAM) for terminals simulated by sequential devices

CICS supports operating system consoles as terminals too, but through operating system services rather than through an access method. The terminal control interface to a console is the same as to other terminals (though certain consoles might have certain restrictions), but BMS is not available. You can find a full list of the terminals supported by CICS in DFHTCT: CICS terminals list.