BSP - Beratung, Schulung, Projekte


DYNAMASK - Dynamically Replace EDT and Device Mask

What does it do?

DYNAMASK provides the ability to dynamically change and add to the unit names defined at SYSGEN. DYNAMASK optionally can be given unit addresses or volumes and the unit names will be assigned to the unit addresses that the volumes are currently mounted. It can be run at any time the system is drained of all activity. DYNAMASK runs as an operator requested or batch submitted utility which makes the necessary control block changes and exits. It requires minimum resources and executes in a few seconds.

For complete documentation, see SYS2.DYNAMASK.ASM($$DYNDOC)

The program is controlled by a member in SYS1.PARMLIB. The default member to be used is called EDT00. As distributed this member contains only comments, and needs to be adjusted. Reading the comments, though, will give you a starting point in creating your own EDTxx member

Sample EDT00 member

* IF CC1=*, THEN THIS IS A COMMENT
* CC1=UNITNAME YOU WISH TO UPDATE/ADD
*   FOLLOWED BY A SPACE AND THE VOLSER (1-6 CHARS "*" FOR WILDCARD OK)
*   OR FOLLOWED BY /CUU OR /CUU-CUU OR ("*" FOR WILDCARDS OK)
* EX:  12345678901234567890
*      * THIS IS A COMMENT
*      * ADD PUB003 TO SYSDA UNITNAME POOL
*      SYSDA PUB003
*      * ADD ALL PUB VOLUMES TO SYSDA UNITNAME POOL
*      SYSDA PUB*
*      * ADD UNIT 247 TO SYSDA POOL
*      SYSDA /247
*      * ADD UNITS 240 THROUGH 24F TO SYSDA UNITNAME POOL
*      SYSDA /24*
*      * ADD UNITS 240 THROUGH 244 TO SYSDA UNITNAME POOL
*      SYSDA /240-244
*      * REMOVE UNIT 443 FROM TAPE9 UNITNAME POOL
*      -TAPE9 /443
*      * ADD X'420-42F' ALL X'5XX' AND X'440-45F' TO TAPE1 UNITNAME
*      TAPE1  /42*,/5*,/440-45F

JCL Execution Parameters are specified via the PARM statement on the EXEC card:

PARM=msg If specified, the first 20 bytes of message msg will be WTOed

Required DD names

DDNAME Description
SYSPRINT output queue for report
SYSIN DYNAMASK control Statements

Usage

Assembly and Link JCL can be found in SYS2.DYNAMASK.ASM(INSTALL).
Execution JCL can be found in SYS2.DYNAMASK.ASM(DYNAPROC)

Disclaimer

Although this program has been tested on the Turnkey MVS system Version 3 it is not guaranteed to be bug-free (which program is?)

Use at your own risk