MCB - BMS message control block

     DESCRIPTIVE NAME = CICS TS BMS MESSAGE CONTROL BLOCK
           Licensed Materials - Property of IBM
            Restricted Materials of IBM 
           5655-Y04
           (C) Copyright IBM Corp. 1980, 2016 
     FUNCTION = DEFINE THE STATE OF A BMS LOGICAL MESSAGE. THIS IS
                USED BY THE TERMINAL PAGE RETRIEVAL PROGRAM DFHTPR.
                THERE IS ONE MCB PER LEVEL OF PAGE CHAINING. THE
                MCBS ARE CHAINED TOGETHER, WITH AN ANCHOR IN THE BMS
                TCTTE EXTENSION. MCBS ARE ALLOCATED AND FREED BY
                DFHTPR. THEY RESIDE IN SHARED STORAGE.
                THE MCB HAS SEVERAL PARTS:-
                 A) A COMMON PART CONTAINING INFORMATION SUCH AS THE
                    TS QUEUE NAME.
                 B) A PART CONTAINING STATUS INFORMATION (E.G. CURRENT
                    PAGE NUMBER) FOR THE CURRENT LDC OR PARTITION.
                 C) AN ENTRY FOR EACH LDC OR PARTITION CONTAINING DTATUS
                    DATA (E.G. CURRENT PAGE NUMBER, TOTAL PAGE COUNT)
                    FOR THAT LDC OR PARTITION. THIS IS COPIED INTO B)
                    WHEN THE LDC OR PARTITION BECOMES CURRENT.
                 D) THE PAGE/LDC TABLE WITH ONE ENTRY PER PAGE OF THE
                    MESSAGE, INDICATING THE LDC OR PARTITION FOR THIS
                    PAGE
               THE MCB IS PARTIALLY BUILT FROM THE MESSAGE CONTROL
               RECORD (MCR) WHEN THIS IS RETRIEVED FROM TS. OTHER
               PARTS ARE MAINTAINED BY DFHTPR.
     NOTES :
      DEPENDENCIES = S/370
      RESTRICTIONS = NONE
      REGISTER CONVENTIONS = SEE COMMENTS IN CODE
      MODULE TYPE = DSECT
      MODULE SIZE = NOT APPLICABLE
      ATTRIBUTES = NOT APPLICABLE
     ENTRY POINT = NOT APPLICABLE
      PURPOSE = SEE FUNCTION
      LINKAGE = NOT APPLICABLE
     INPUT = NOT APPLICABLE
     OUTPUT = NOT APPLICABLE
     EXIT-NORMAL = NOT APPLICABLE
     EXIT-ERROR = NOT APPLICABLE
     EXTERNAL REFERENCES = NONE
      CONTROL BLOCKS = NOT APPLICABLE
      TABLES = NOT APPLICABLE
      MACROS = NONE
Table 1.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 0 DFHMCB
(0) FULLWORD 4 MCBSAA SHARED STORAGE ACCOUNTING
(4) FULLWORD 4 MCBCOMN (0) START MCB COMMON CONTROL AREA
         MCB COMMON CONTROL AREA
(4) ADDRESS 4 MCBNEXT POINTER TO CHAINED MCB
         FIELDS ABOVE OVERLAP THE BMS TCTTE EXTENSION FOR FINDING
         THE MCB CHAIN HEADER
(8) CHARACTER 8 MCBCBID MCB SELF IDENTIFICATION. SET TO 'DFHMCBDS' WHEN MCB CREATED
(10) ADDRESS 4 MCBCUREP A(CURENTLY ACTIVE REPEATED)
(14) ADDRESS 4 MCBCURPG A(CURRENT PAGING ENTRY)
(18) ADDRESS 4 MCBPGLDC POINTER TO PAGE/LDC TABLE
(1C) ADDRESS 4 MCBAPSET POINTER TO INCORE APPLICATION PARTITION SET
(20) CHARACTER 12 MCBMSGID (0) MESSAGE ID OF LOGICAL MESSAGE
(20) CHARACTER 8 MCBTSID (0) TEMPORARY STORAGE KEY
(20) CHARACTER 2 MCBTSPFX TEMPORARY STORAGE RECOVERY PREFIX
(22) ADDRESS 1 MCBTSPKY BMS IDENTIFIER -X'FD'
(23) BITSTRING 3 MCBUNQID MESSAGE ID OF THIS MSG
(26) CHARACTER 1 MCBTTS TERMINAL TYPE SUFFIX OF RECEIVING TERMINAL
(27) BITSTRING 1 MCBTSQUL TEMP. STORAGE QULAIFICATION
(28) BITSTRING 1 MCBCHN CHAIN NUMBER OF THIS MESSAGE
(29) BITSTRING 1 MCBFLAGS FLAGS
         NOTE -- DSECTS FOR THE MCR AND MCB SHOULD HAVE
         EQUIVALENT BIT PATTERNS FOR THE FOLLOWING FLAGS --
               XXXTITLE - MESSAGE HAS A TITLE
               XXXWBCUR WTBRK=CURR (2741)
               XXXWBALL WTBRK=ALL (2741)
               XXXEODOP EODPURG=OPER
               WHERE XXX IS ONE OF MCR OR MCB
(29) 1... ....   MCBTITLE "X'80'" ...MESSAGE HAS A TITLE
(29) .1.. ....   MCBWBCUR "X'40'" ...WTBRK=CURRENT (2741 ONLY)
(29) ..1. ....   MCBWBALL "X'20'" ...WTBRK=ALL (2741 ONLY)
(29) ...1 ....   MCBEODOP "X'10'" ...EODPURG=OPER FOR THIS MESSAGE
(29) .... 1...   MCBOPCHK "X'08'" ...OPERATOR CHECKING WITH MESSAGE
(29) .... .1..   MCBMCRCK "X'04'" ...MCR HAS BEEN CHECKED
(29) .... ..1.   MCBCURR "X'02'" ...THIS IS CURRENT CHAIN LEVEL
(29) .... ...1   MCBACT "X'01'" ...THIS MCB IS ACTIVE
    THESE FIELDS POSITIONALLY DEPENDENT ON 'MCBMSGID' & 'MCBLDCL
(2A) HALFWORD 2 (0)
(2A) CHARACTER 18 MCBCLDCI (0) DESTINATION INFORMATION
(2A) HALFWORD 2 MCBPAG PAGE NUMBER CURRENTLY BEING DISPLAYED
(2C) CHARACTER 2 MCBCLDCM CURRENTLY ACTIVE LDC MNEMONIC
(2E) BITSTRING 1 MCBCLDCD CURRENTLY ACTIVE LDC DEVICE CODE
(2F) BITSTRING 1 MCBLDCF CURRENTLY ACTIVE DESTINATION CODE
    REFER TO 'MCBRLDCF' FOR VALUES
(30) HALFWORD 2 MCBPGCNT TOTAL NUMBER OF PAGES PER DESTINATION
(32) CHARACTER 8 MCBCDSN CURRENTLY ACTIVE DESTINATION NAME
(3A) BITSTRING 1 MCBCDSP DATA STREAM PROFILE
(3C) HALFWORD 2 MCBCHCNT NUMBER OF CHAIN LEVELS 01 CONNECTED TO TERMINAL 01 (FIRST MCB ONLY)
(40) FULLWORD 4 (0) ALIGNMENT
(40) CHARACTER 2 MCBCPRTN NAME OF CURRENT PARTITION
(42) CHARACTER 1 MCBCPID PID OF CURRENT PARTITION
(43) BITSTRING 3   RESERVED
(46) BITSTRING 1 MCBIND02 MCB INDICATOR TWO
(46) 1... ....   MCBAPDUN "X'80'" ALL AUTOMATIC PAGING COMPLETE
(46) .1.. ....   MCBPNDUN "X'40'" PAGING NOT COMPLETE
(46) ..1. ....   MCBFSDUN "X'20'" FINAL SCAN COMPLETE
(46) ...1 ....   MCBQKPRG "X'10'" MESSAGE ELIGIBLE FOR QUICK PURGE
(46) .... 1...   MCBSCSZ "X'08'" USE ALTERNATE SCREENSIZE
(46) .... .1..   MCBTRAN "X'04'" PAGES INCLUDE EXTRA BYTE FOR TRANSPARENT MODE
(46) .... ..1.   MCBRDSPL "X'02'" REDISPLAY CURRENT PAGE IN EACH PARTITION
(46) .... ...1   MCBSCHED "X'01'" AID for this MCB has been rescheduled by DFHACP
(48) FULLWORD 4 MCBCEND (0) END COMMON MCB
(48) .1.. 1...   MCBLEN "MCBCEND-DFHMCB" LENGTH OF COMMON MCB AREA
         MCB/LDC REPEATED ENTRY
(48) .... .1..   MCBDRLDC "4" DEFAULT REPEATED ENTRY COUNT
    THESE FIELDS POSITIONALLY DEPENDENT ON 'MCBCLDCI'
(48) .1.. 1...   MCBLDCL "*" LDC REPEATED ENTRY LIST
(48) HALFWORD 2 MCBRCPAG CURRENT PAGE NUMBER
(4A) CHARACTER 2 MCBRLDCM LDC MNEMONIC
(4C) BITSTRING 1 MCBRLDCD LOGICAL DEVICE CODE
(4D) BITSTRING 1 MCBRLDCF PAGING STATUS FLAG ONLY
(4D) 1... ....   MCBPSTAT "X'80'" (= TCTTEPGP ) PAGING STATUS
(4D) .1.. ....   MCBTREV "X'40'" (= TCTTEPGR ) PAGING STATUS TEMPORARILY REVERSED. LAST 6 BITS RESERVED
(4E) HALFWORD 2 MCBRTPC TOTAL PAGE COUNT FOR THIS LDC
(50) CHARACTER 8 MCBRDSN DESTINATION NAME
(58) CHARACTER 1 MCBRDSP DATA STREAM PROFILE
(5A) HALFWORD 2 (0) ENSURE ALIGNMENT
(5A) .1.1 1.1.   MCBRLDCE "*" END REPEATED ENTRY
(5A) ...1 ..1.   MCBRLEN "MCBRLDCE-MCBLDCL" LDC REPEATED ENTRY LENGTH
(48) CHARACTER 0 MCBLDCLL (0) DEFINE MCB/LDC LIST
         MCB'S PG/LDC TABLE
(48) .... 1...   MCBDLDCP "8" PAGE/LDC TABLE SIZE (NUMBER OF ENTRIES)
  DEFINE SPACE FOR THE PAGE/LDC TABLE
(90) CHARACTER 1
(90) 1.1. ....   MCBEXEND "*" END OF TABLE
(90) 1.1. ....   MCBEXLEN "MCBEXEND-DFHMCB" LENGTH OF TABLE