A CA IDMS assembler program needs to wait on an external z/OS ECB and an internal IDMS ECB (e.g. a #SETIME POST ECB). An external ECB is a single fullword that will be posted by a z/OS system task. An internal CA-IDMS ECB is 3 fullwords and posted by an internal IDMS task.
How can I code a #WAIT macro to do this?
To wait for multiple ECBs the program needs to use the #WAIT macro and an ECB list.
The wait should be coded like this:
The ECB list would be defined as follows:
Ecblist1 DS 0F
DC A(ecb1) ecb1 is the 1 fullword external ECB address
DC F'0' no flag on first byte indicates z/OS external ECB
DC A(ecb2) ecb2 is the 3 fullword internal ECB address
DC X'E0' X'80' flag indicate end of list
* X'60' flag indicates some kind of internal ECB
For a description of the format of the ECB list, see dsect #ELEDS in https://docops.ca.com. For a description of the 3 fullword CA IDMS ECB see dsect #ECBDS.