Modules

BMS makes use of the following modules (see Figure 1):

Module Function
DFHBMSX URM called when a 3270 data stream validation error has been detected when issuing BMS RECEIVE MAP commands.
DFHDSB Addresses the page buffer, which was composed by the page and text build program (DFHPBP).
DFHEMS The EXEC interface processor for BMS commands.
DFHIIP Called in response to requests for BMS services involving terminals other than IBM® 3270 Information Display Systems.
DFHMCP The interface between application programs and the modules that perform mapping, message switching, page and text building, device-dependent output preparation, and message disposition to terminals, temporary-storage areas, or the application program.
DFHMCX The BMS fast path module for standard and full-function BMS, and the program for minimum BMS support. It is called by DFHMCP if the request satisfies one of the following conditions:
  • It is a non-cumulative direct terminal send map or receive map issued by a command-level program.
  • It is for a 3270 display or an LU3 printer which does not support outboard formatting. If the terminal supports partitions, it is in the base state.
  • The CSPQ transaction has been started.
  • The message disposition has not changed.
DFHM32 Called in response to requests for BMS services involving terminals of the 3270 Information Display System.
DFHPBP Processes all BMS output requests (SEND MAP, SEND PAGE, and SEND TEXT). It performs the following functions:
  • Positions the data in the page, either by placing it in a buffer, or by copying it and adjusting the map for an IBM 3270 Information Display System (SEND MAP ACCUM)
  • Places the data into the page buffer (SEND TEXT ACCUM)
  • Inserts device-dependent control characters for other than 3270 Information Display System devices, removing extended attributes.
DFHPHP Processes terminal operations that involve partitions.
DFHRLR Builds terminal type parameters (TTPs), which are the main blocks for building and writing out data in BMS.
DFHTPP Directs completed pages to a destination specified in the BMS output request: SEND TEXT sends to the originating terminal; SEND MAP PAGING or SEND TEXT PAGING directs to temporary storage; and SEND MAP SET or SEND TEXT SET directs to a list of completed pages that are returned to the application program).
DFHTPQ Checks the chain of automatic initiate descriptors (AIDs) to detect and delete AIDs that have been on the chain for an interval exceeding the purge delay time interval specified by the PRGDLAY system initialization parameter, if this has a nonzero value.
DFHTPR Processes messages built by BMS and placed in temporary storage.
DFHTPS Invoked for each terminal type to which a BMS logical message built with SEND MAP PAGING or SEND TEXT PAGING is to be sent. For each terminal designated by the originating application program, DFHTPR is scheduled to display the first page of the logical message if the terminal is in paging status, or the complete message if it is in autopage status.

Basic mapping support (BMS) is provided by means of a number of modules, each of which interfaces with other BMS modules, CICS® control components, and application programs. The maps that are handled by BMS may be new maps, created to utilize BMS mapping capabilities. The interrelationships of CICS programs requesting mapping services are summarized in Figure 1. Further details for specific programs within BMS are given in the topics that follow.

One of three versions (MINIMUM, STANDARD, or FULL) of basic mapping support can be selected by the system initialization parameter BMS (see BMS system initialization parameter). Where the generated versions of a BMS module differ according to the level of function provided, a suffix identifies the version as follows:
  • E$ for minimum function
  • A$ for standard function
  • 1$ for full function.

In the module lists that follow, an asterisk (*) after a module name shows that the module is suffixed in this way. Elsewhere in this book, however, the BMS modules are usually referenced by their unsuffixed names with no distinction made between the minimum, standard, and full-function versions.

The module used by all three versions of BMS (minimum, standard, and full-function) is:
  • DFHMCP* (mapping control program).
Additional modules used by both standard and full-function versions of BMS are:
  • DFHDSB* (data stream build)
  • DFHIIP* (non-3270 input mapping)
  • DFHMCX (fast path module)
  • DFHML1 (LU1 printer mapping)
  • DFHM32* (3270 mapping)
  • DFHPBP* (page build program)
  • DFHPHP (partition handling program)
  • DFHRLR* (route list resolution)
  • DFHTPP* (terminal page processor).
Additional modules used only by full-function BMS are:
  • DFHTPQ (terminal page clean up)
  • DFHTPR (terminal page retrieval)
  • DFHTPS (terminal page scheduling).
A detailed description of each of these modules follows in alphabetic order of module name.
Figure 1. Modules associated with basic mapping support (BMS)
Diagram showing the modules associated wih basic mapping support (BMS) and the relationships between them.