Mapping Request Control Block (MRCB)

The MRCB is a working storage area defined within the application program area used for processing mapping requests. It contains the name of a map to be used in a Com-plete mapping CALL function, plus additional control information pertinent to both input and output operations.

The format of the MRCB is shown in the following table.

Copy code for the MRCB is provided in the Com-plete source library:

  • CCMRCB - Assembler

  • COBMRCB - COBOL

  • PL1MRCB - PL/I

Field Name Offset Len Description
The first 8 bytes should be:
MAPNAME 0 4 Required.
VERSION 4 1 Required. If B, then MAPMVER must be blank.
FILLER 5 3 Must be spaces.
or:
MAPNAME 0 6 Required. Six-character map name must have device code in the last two bytes (for example, F2).
FILLER 6 2 Must be spaces and MAPMVER must be B.
MAP-COUNT 8 2 Binary halfword. Specifies the number of maps to be kept resident.
The default value, spaces, is the same as 2 (binary 16448, x'4040').
The map count field should be reset to zero (x'0000') on the last mapping call that uses a map so that the map is deleted from thread storage. Failure to do this may result in an abend S80A of the application, due to insufficient storage.
FCTE-COUNT 10 2 Binary halfword. Specifies the number of Field Control Table Entries (FCTEs) in the FCT.
Must be less than 16449. A value of 16448 (x'4040') is the same as 0.
FCE-FORMAT 12 1 Character. Must be one of the following:
S or space FCT entries are short form entries of 6 bytes each. They contain the field name only.
L FCT entries are long form entries of 10 bytes each. They contain the field name, an input flag, and the FDC override field.
E FCT entries are extended form entries of 13 bytes each. They contain the field name, an input flag, the FDC override field, the color override field, and the symbol set ID override.
MAP-CONCAT 13 1 Character. Must be one of the following:
N or space The map is not concatenated or addressed. The map is accessed from the resident area of Com-plete or the Com-plete load library chain.
A The map is addressed, and the location is specified by MAP-ADDRESS.
C The map is concatenated to the MRCB and does not need to be loaded.
WRITE-OPTION 14 1 Character. Must be one of the following:
A or space Write all unprotected fields.
O Write only those fields specified in the FCT.
READ-OPTION 15 1 Character. Must be one of the following:
A or space Allow all unprotected fields that have been entered by the terminal operator to be moved into the data area.
O Allow only those unprotected fields specified in the FCT and those that have been entered by the terminal operator to be moved into the data area.
TCC 16 8 Terminal control codes to be concatenated to those in the map.
CURSOR-OUT 24 6 Field name to place cursor in during WRTM call.
CURSOR-IN 30 6 Name of the field that the cursor was found in during the READM call.
RETURN-CODE 36 2 Binary halfword. Return code from the last READM or WRTM call.
ENTER-CODE 38 2 Alphanumeric codes or numeric codes to indicate which terminal interrupt key was pressed. With the exception of the alphanumeric codes TR and SP, the alphanumeric codes signify those keys that do not transmit data. Numeric codes indicate data transfer, if data was entered.
space No data entered.
CL Clear key entered.
TR Test request entered.
SP Selector pen interrupt.
SC ID card reader.
A1 through A3 through keys entered.
00 Normal entry (ENTER, EOT, etc.).
01 through 24 through keys.
FIELDS-READ 40 2 Binary halfword. Count of the number of fields read.
ERROR-FIELDS 42 2 Binary halfword. Count of the number of input fields found in error (invalid keyword, alpha data in numeric field, etc.).
This field can be multiplied by 10 to obtain the length for writing the feedback area to the terminal.
FEEDBACKLGTH 44 2 Binary halfword. Specifies the length of the MRCB feedback area.
This value must be less than 16449. 16448 (x'4040') is the same as 0.
MAPMVERS 46 1 Space or scaling of map. Mapping uses the map with name built from four characters of the MAPNAME field concatenated with the device code of the terminal.
      B Scaling of map. Mapping uses the map with the name given by all six characters of the MAPNAME field. The map is scaled to fit the device code of the terminal in use.
  47 1 Must be spaces. Reserved for future use.
MAP-ADDRESS 48 4 Must be spaces unless MAP-CONCAT is A. If MAP-CONCAT is A, then this is the address of the map. The map can be located within the thread, or in the resident area of Com-plete.
EXPANSION 52 18 Must be spaces. Reserved for future use.
FEEDBACK-AREA 70 nn Feedback area used during input exception processing.
If this area exists, the MRCB field FEEDBACK-LGTH must be non-zero and less than 16448. When an input exception occurs, the name of the field in error and an exception code are placed here. The format of each entry is "FFFFFF XX", where "FFFFFF" is the name of the field in error, and "XX" is the exception code.