Overview
Group DASD in MVS 3.8J / ISPF v 2.x / Hercules
(updated 2025-09-30)
When submitting a batch MVS utility, in most cases, dataset allocations point to a specific volume serial as shown in the below sample JCL stream (highlighted in white):
//IEBCOPY JOB LB,'COPY PDS 2 PDS',CLASS=A,MSGCLASS=A,
// MSGLEVEL=(1,1),NOTIFY=LARRY01
//* ----------------------------------------------------------------
//* COPY PDS TO ANOTHER
//* ----------------------------------------------------------------
//STEP010 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DISP=SHR,DSN=HERC01.MACLIB
//SYSUT2 DD DISP=(NEW,CATLG),DSN=HERC01.MACLIB.BKUP,
// SPACE=(CYL,(3,1,50),RLSE),
// UNIT=DISK,
// VOL=SER=XMIT01,
// DCB=*.STEP010.SYSUT1
//SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(5,5))
//SYSUT4 DD UNIT=SYSDA,SPACE=(CYL,(5,5))
//SYSIN DD *
COPY INDD=SYSUT1,OUTDD=SYSUT2
/*
//
The above DD, SYSUT2, requests HERC01.MACLIB.BKUP to be written on volume XMIT01.
In actuality, MVS will search system configuration tables for volume XMIT01 in device group DISK, and provided XMIT01 is found in the group and available (i.e. device is online and ready), continue with dataset allocation.
At this point, control is given to program IEBCOPY.
As another example, referring to the below SORT JCL stream, notice DD statements, SORTWK01 – SORTWORK06, declaring UNIT=2314 with no VOLSER parameter.
//LARRY01S JOB (SETUP),'TEST SORT',CLASS=A,MSGCLASS=A,
// REGION=1024K,MSGLEVEL=(1,1),NOTIFY=LARRY01
//SORT EXEC PGM=SORT,REGION=512K,PARM='MSG=AP'
//SYSOUT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SORTLIB DD DISP=SHR,DSN=SYS1.SORTLIB
//SORTOUT DD SYSOUT=*,DCB=(BLKSIZE=80,RECFM=F)
//SORTWK01 DD UNIT=2314,SPACE=(CYL,(5,5))
//SORTWK02 DD UNIT=2314,SPACE=(CYL,(5,5))
//SORTWK03 DD UNIT=2314,SPACE=(CYL,(5,5))
//SORTWK04 DD UNIT=2314,SPACE=(CYL,(5,5))
//SORTWK05 DD UNIT=2314,SPACE=(CYL,(5,5))
//SORTWK06 DD UNIT=2314,SPACE=(CYL,(5,5))
//SYSIN DD *
SORT FIELDS=(11,30,CH,A)
RECORD TYPE=F,LENGTH=(80)
END
/*
//SORTIN DD DISP=SHR,
// DSN=LARRY01.PGM.SRC(CCSU1DAT)
//
When MVS 3.8J is allocating datasets (before handing control to SORT program), MVS determines eligible target volumes (DASD device, in this case) by inspecting the availability of grouped devices in the EDT (Eligible Device Table) specifically for UNIT=2314 and associated device UCB (Unit Control Block) information.
Defined groups of devices are declared in the EDT. Types of groups include generic devices (e.g. UNIT=3390, UNIT=1403) or esoteric devices (e.g. UNIT=TAPE, UNIT=SORT).
To provide more insight in EDT participation during the dataset allocation process, a sample EDT display follows, for visualization purposes, depicting device unit addresses (CUUs) grouped by UNITNAME (e.g. UNIT=) which are initially defined during MVS CP configuration (system generation) by the systems programmer(s).
. UNITNAME CUUs . 3350 140 141 142 143 144 145 146 147 148 248 149 14A 14B 14C 14D 14E 14F 249 24A 24B 24C 24D 24E 24F 340 341 342 343 344 345 346 347 348 349 34A 34B 34C 34D 34E 34F 240 241 242 243 244 245 246 247 3380 181 182 183 184 185 186 188 189 18A 18B 18C 18D 18E 18F 180 187 282 283 284 285 286 287 288 289 28A 28B 28C 28D 28E 28F 380 381 382 383 384 385 386 387 388 389 38A 38B 38C 38D 38E 38F 280 281 3390 191 192 193 198 199 19A 19B 19C 19D 19E 19F 194 195 196 197 190 290 294 297 298 299 390 391 392 393 394 395 396 397 398 399 39A 39B 39C 39D 39E 39F 29C 29D 29E 29F 29A 29B 295 296 291 292 293 3330 150 151 153 154 155 156 159 15B 15C 15D 15E 15F 250 251 252 253 254 255 256 257 258 259 25A 25B 25C 25D 25E 25F 350 351 352 353 354 355 356 357 358 359 35A 35B 35C 35D 35E 35F 152 157 158 15A 3340 160 161 162 163 164 165 166 167 168 169 16A 16B 16C 16D 16E 16F 260 261 262 263 264 265 266 267 268 269 26A 26B 26C 26D 26E 26F 360 361 362 363 364 365 366 367 368 369 36A 36B 36C 36D 36E 36F 3375 172 173 174 175 176 177 178 179 17A 17B 17C 17D 17E 17F 270 271 272 273 274 275 276 277 278 279 27A 27B 27C 27D 27E 27F 370 371 372 373 374 375 376 377 378 379 37A 37B 37C 37D 37E 37F 171 170 2314 130 131 132 133 134 135 136 137 138 139 13A 13B 13C 13D 13E 13F 230 231 232 233 234 235 236 237 238 239 23A 23B 23C 23D 23E 23F 330 331 332 333 334 335 336 337 338 339 33A 33B 33C 33D 33E 33F 3400-6 480 481 482 483 484 485 486 487 3211 002 003 102 103 202 203 302 303 1403 00E 00F 10E 10F 20E 20F 30E 30F 2540 00C 10C 20C 30C 2540-2 00D 10D 20D 30D 3215 009 01F 3277-2 010 011 0C0 0C1 0C2 0C3 0C4 0C5 0C6 0C7 1C0 1C1 1C2 1C3 1C4 1C5 1C6 1C7 2C0 2C1 2C2 2C3 2C4 2C5 2C6 2C7 3C0 3C1 3C2 3C3 3C4 3C5 3C6 3C7 CTC 500 501 502 503 504 505 506 507 510 511 512 513 514 515 516 517 600 601 602 603 604 605 606 607 610 611 612 613 614 615 616 617 TAPE 480 481 482 483 484 485 486 487 SYSDA 140 141 142 143 144 145 146 147 148 248 149 14A 14B 14C 14D 14E 14F 249 24A 24B 24C 24D 24E 24F 340 341 342 343 344 345 346 347 348 349 34A 34B 34C 34D 34E 34F 240 241 242 243 244 245 246 247 181 182 183 184 185 186 188 189 18A 18B 18C 18D 18E 18F 180 187 282 283 284 285 286 287 288 289 28A 28B 28C 28D 28E 28F 380 381 382 383 384 385 386 387 388 389 38A 38B 38C 38D 38E 38F 280 281 191 192 193 198 199 19A 19B 19C 19D 19E 19F 194 195 196 197 190 290 294 297 298 299 390 391 392 393 394 395 396 397 398 399 39A 39B 39C 39D 39E 39F 29C 29D 29E 29F 29A 29B 295 296 291 292 293 150 151 153 154 155 156 159 15B 15C 15D 15E 15F 250 251 252 253 254 255 256 257 258 259 25A 25B 25C 25D 25E 25F 350 351 352 353 354 355 356 357 358 359 35A 35B 35C 35D 35E 35F 152 157 158 15A 172 173 174 175 176 177 178 179 17A 17B 17C 17D 17E 17F 270 271 272 273 274 275 276 277 278 279 27A 27B 27C 27D 27E 27F 370 371 372 373 374 375 376 377 378 379 37A 37B 37C 37D 37E 37F 171 170 DISK 140 141 142 143 144 145 146 147 148 248 149 14A 14B 14C 14D 14E 14F 249 24A 24B 24C 24D 24E 24F 340 341 342 343 344 345 346 347 348 349 34A 34B 34C 34D 34E 34F 240 241 242 243 244 245 246 247 181 182 183 184 185 186 188 189 18A 18B 18C 18D 18E 18F 180 187 282 283 284 285 286 287 288 289 28A 28B 28C 28D 28E 28F 380 381 382 383 384 385 386 387 388 389 38A 38B 38C 38D 38E 38F 280 281 191 192 193 198 199 19A 19B 19C 19D 19E 19F 194 195 196 197 190 290 294 297 298 299 390 391 392 393 394 395 396 397 398 399 39A 39B 39C 39D 39E 39F 29C 29D 29E 29F 29A 29B 295 296 291 292 293 150 151 153 154 155 156 159 15B 15C 15D 15E 15F 250 251 252 253 254 255 256 257 258 259 25A 25B 25C 25D 25E 25F 350 351 352 353 354 355 356 357 358 359 35A 35B 35C 35D 35E 35F 152 157 158 15A 172 173 174 175 176 177 178 179 17A 17B 17C 17D 17E 17F 270 271 272 273 274 275 276 277 278 279 27A 27B 27C 27D 27E 27F 370 371 372 373 374 375 376 377 378 379 37A 37B 37C 37D 37E 37F 171 170 SYSSQ 140 141 142 143 144 145 146 147 148 248 149 14A 14B 14C 14D 14E 14F 249 24A 24B 24C 24D 24E 24F 340 341 342 343 344 345 346 347 348 349 34A 34B 34C 34D 34E 34F 240 241 242 243 244 245 246 247 181 182 183 184 185 186 188 189 18A 18B 18C 18D 18E 18F 180 187 282 283 284 285 286 287 288 289 28A 28B 28C 28D 28E 28F 380 381 382 383 384 385 386 387 388 389 38A 38B 38C 38D 38E 38F 280 281 191 192 193 198 199 19A 19B 19C 19D 19E 19F 194 195 196 197 190 290 294 297 298 299 390 391 392 393 394 395 396 397 398 399 39A 39B 39C 39D 39E 39F 29C 29D 29E 29F 29A 29B 295 296 291 292 293 150 151 153 154 155 156 159 15B 15C 15D 15E 15F 250 251 252 253 254 255 256 257 258 259 25A 25B 25C 25D 25E 25F 350 351 352 353 354 355 356 357 358 359 35A 35B 35C 35D 35E 35F 152 157 158 15A 172 173 174 175 176 177 178 179 17A 17B 17C 17D 17E 17F 270 271 272 273 274 275 276 277 278 279 27A 27B 27C 27D 27E 27F 370 371 372 373 374 375 376 377 378 379 37A 37B 37C 37D 37E 37F 171 170 SYSVIO 140 148 248 240 VIO 140 148 248 240 PAGE 160 161 162 163 164 165 166 167 168 169 16A 16B 16C 16D 16E 16F 260 261 262 263 264 265 266 267 268 269 26A 26B 26C 26D 26E 26F 360 361 362 363 364 365 366 367 368 369 36A 36B 36C 36D 36E 36F SORT 130 131 132 133 134 135 136 137 138 139 13A 13B 13C 13D 13E 13F 230 231 232 233 234 235 236 237 238 239 23A 23B 23C 23D 23E 23F 330 331 332 333 334 335 336 337 338 339 33A 33B 33C 33D 33E 33F WORK 140 180 190 170 TSO 29A 29B 2400-3 480 481 482 483 484 485 486 487 3400-3 480 481 482 483 484 485 486 487 3400-5 480 481 482 483 484 485 486 487 SYSALLDA 140 141 142 143 144 145 146 147 148 248 149 14A 14B 14C 14D 14E 14F 249 24A 24B 24C 24D 24E 24F 340 341 342 343 344 345 346 347 348 349 34A 34B 34C 34D 34E 34F 240 241 242 243 244 245 246 247 181 182 183 184 185 186 188 189 18A 18B 18C 18D 18E 18F 180 187 282 283 284 285 286 287 288 289 28A 28B 28C 28D 28E 28F 380 381 382 383 384 385 386 387 388 389 38A 38B 38C 38D 38E 38F 280 281 191 192 193 198 199 19A 19B 19C 19D 19E 19F 194 195 196 197 190 290 294 297 298 299 390 391 392 393 394 395 396 397 398 399 39A 39B 39C 39D 39E 39F 29C 29D 29E 29F 29A 29B 295 296 291 292 293 150 151 153 154 155 156 159 15B 15C 15D 15E 15F 250 251 252 253 254 255 256 257 258 259 25A 25B 25C 25D 25E 25F 350 351 352 353 354 355 356 357 358 359 35A 35B 35C 35D 35E 35F 152 157 158 15A 160 161 162 163 164 165 166 167 168 169 16A 16B 16C 16D 16E 16F 260 261 262 263 264 265 266 267 268 269 26A 26B 26C 26D 26E 26F 360 361 362 363 364 365 366 367 368 369 36A 36B 36C 36D 36E 36F 172 173 174 175 176 177 178 179 17A 17B 17C 17D 17E 17F 270 271 272 273 274 275 276 277 278 279 27A 27B 27C 27D 27E 27F 370 371 372 373 374 375 376 377 378 379 37A 37B 37C 37D 37E 37F 171 170 130 131 132 133 134 135 136 137 138 139 13A 13B 13C 13D 13E 13F 230 231 232 233 234 235 236 237 238 239 23A 23B 23C 23D 23E 23F 330 331 332 333 334 335 336 337 338 339 33A 33B 33C 33D 33E 33F TEMP 291 292 293 PUBLIC 240 280 281 194 195 196 197 171 SPOOL 152 157 158 15A XMIT 295 296 LARB 29C 29D 29E 29F
In the case UNIT=2314, the CP system configuration defines a total of 48 DASD device ‘slots’ or device addresses (type 2314). As mentioned, each device has a UCB which contains device status (e.g. device online status, device mount status) and other device information maintained by MVS in real-time.
. UNITNAME CUUs . 2314 130 131 132 133 134 135 136 137 138 139 13A 13B 13C 13D 13E 13F 230 231 232 233 234 235 236 237 238 239 23A 23B 23C 23D 23E 23F 330 331 332 333 334 335 336 337 338 339 33A 33B 33C 33D 33E 33F
Focusing on type 2314, MVS looks at each device (CUU 130-13F, 230-23F, 330-33F) status before finalizing and assigning a volume to each of the SORTWKnn DDs.
In actuality, MVS 3.8J has only six DASD available devices (type 2314) for assignment that are online ready state on my MVS 3.8J system, as shown below:
-----FREE----- -Vol----------------------------- . CUU VOLSER DEVTYPE Cyls Trks Exts Cyls DSTAT VSTAT MSTAT ASTAT. 131 SORT01 2314 0199 0000 0001 00200 Online Public PermRes Unall 132 SORT02 2314 0199 0000 0001 00200 Online Public PermRes Unall 133 SORT03 2314 0199 0000 0001 00200 Online Public PermRes Unall 134 SORT04 2314 0199 0000 0001 00200 Online Public PermRes Unall 135 SORT05 2314 0199 0000 0001 00200 Online Public PermRes Unall 136 SORT06 2314 0199 0000 0001 00200 Online Public PermRes Unall
After JOB completion, MVS JOB log shows finalized device allocations, temporary dataset names and terminating dataset disposition. As depicted, in this case, each of the SORTWKnn DDs was allocated to a different 2314 DASD device:
.
.
.
IEF237I 135 ALLOCATED TO SORTWK01
IEF237I 133 ALLOCATED TO SORTWK02
IEF237I 131 ALLOCATED TO SORTWK03
IEF237I 134 ALLOCATED TO SORTWK04
IEF237I 136 ALLOCATED TO SORTWK05
IEF237I 132 ALLOCATED TO SORTWK06
.
.
.
IEF285I SYS25253.T190810.RA000.LARRY01S.R0000001 DELETED *--------0
IEF285I VOL SER NOS= SORT05.
IEF285I SYS25253.T190810.RA000.LARRY01S.R0000002 DELETED *--------0
IEF285I VOL SER NOS= SORT03.
IEF285I SYS25253.T190810.RA000.LARRY01S.R0000003 DELETED *--------0
IEF285I VOL SER NOS= SORT01.
IEF285I SYS25253.T190810.RA000.LARRY01S.R0000004 DELETED *--------0
IEF285I VOL SER NOS= SORT04.
IEF285I SYS25253.T190810.RA000.LARRY01S.R0000005 DELETED *--------0
IEF285I VOL SER NOS= SORT06.
IEF285I SYS25253.T190810.RA000.LARRY01S.R0000006 DELETED *--------4
IEF285I VOL SER NOS= SORT02.
.
.
This explanation is a high-level description.
A group of like-DASD devices can be declared dynamically for your specific needs (after a systems programmers huddle session 😉 ).
Perhaps pooling of application-level datasets across predefined volumes using some device volume serial ID naming convention. Or, developer-level datasets within a set of personal volumes for portability purposes.
The use of a ‘nickname’ approach provides flexibility to allocating datasets across a ‘fenced’ set of devices minimizing maintenance of JCL job streams through the use of UNIT=nickname for as dataset residency increases, especially beyond a single device capacity.
Since the maturing of MVS 3.8J TK3 from early 2000s, a facility is included to update the EDT dynamically named DYNAMASK to group like devices. See the section titled MVS0110 – Install DYNAMASK: Dynamic EDT Update Utility at this link for more information including a documentation link.
To demonstrate the use of DYNAMASK for adding a new EDT group, I documented my personal series of steps to solve the following problem statement using TK5 on Linux and Windows hosts as a contribution to the MVS 3.8J hobbyist / enthusiast community:
– Define three 3390 model 1 volumes (LARB10, LARB11, LARB12) ) to be used as UNIT=LARB1.
The next section outlines detail steps (highlighted below) to resolve the above problem statement:
- Create Contingency MVS 3.8J System Backup
- Identify CUUs for New 3390 Devices
- Create Script to Define 3390 model-1 DASD Image Files
- Attach new DASD Images to Hercules
- Initialize new DASD Volumes (via ICKDFS13)
- Make New DASD Volumes Available to MVS
- Display new DASD Volumes (via DFSPC)
- Define New Group (EDT00)
- Update EDT with New Group (via DYNAMASK)
- Display EDT with New Group (via UNITMASK)
- Test New Group
- Harden DASD Configuration (on Hercules and MVS)
- IPL MVS 3.8J System
The same steps (perhaps will minor tweaks) can be applied to TK4 and TK3 installations.
Define developer DASD Group (TK5)
The following solution is lengthy and requires great attention to detail as system configurations are being applied which could render your system inoperable! The following steps use a base TK5 update 4 installation.
1. Create Contingency MVS 3.8J System Backup
Please exercise caution and backup your TK5 system directory (in entirety) to facilitate a graceful restore.
Shutdown MVS 3.8J, if currently active.
Create a contingency backup (can be deleted at a later time) on your host platform:
Linux Host Log on or SSH into your TK5 host machine and execute below command: cp -R /root/mvs-tk5 /root/mvs-tk5-bkup -- or -- Windows Host Start a Windows command prompt from TK5 host machine desktop: 1. Press ⊞ Windows key + R to open Run dialog 2. Type cmd /K "cd /d m:\mvs-tk5" and press Enter Execute below command from Windows command prompt: 3. Type xcopy /E /I /Q "m:/mvs-tk5" "m:/mvs-tk5-bkup" and press Enter
Verify contingency backup completed!
Start (IPL) MVS 3.8J.
Before engaging in the following steps, TK4- and TK5 systems use conditional logic to resolve (set) Hercules binary libraries search paths based on host machine architecture in support of various computing platforms which include:
– WINDOWS 32-bit and 64-bit architectures
– LINUX 32-bit, 64-bit, aarch64, arm and arm_softfloat architectures.
Therefore, a shell script or batch file (depending on host OS system) will be created to duplicate the same architecture detection process for use of submitting Hercules utilities (i.e DASDINIT) across TK4-/TK5 featured platforms.
Assumptions for the subsequent steps:
– All directory-file references use TK5 directory structure and are fully-qualified
– Linux root installation at /root/mvs-tk5
– Windows root installation at directory /mvs-tk5 on drive m:
– Did not outline MAC OS options (at this time, no access to MAC OS).
2. Identify CUUs for New 3390 Devices
What is CUU?
CUU is the MVS device Channel and Unit hexadecimal address.
For example, 1F0 means device address F0 on channel 1.
Why do I need CUUs?
The DASD image file naming convention used in this post is volser.cuu for easy identification.
For example, larb10.1f0, implies DASD image for volser LARB10 on device 1F0.
Using ISPF DUCBD add-on (=3.7.D), after initial display, type into the command line, DASD3390*, and press ENTER to list all 3390 CUUs defined on your MVS 3.8J system.
mm/dd/ccyy.jjj hh:mm:ss ---- UCB Display DASD ------------------------------
COMMAND ===> SCROLL ===> CSR
ROW 1 OF 80
HERC01 PDUCBD0
Request: DASD3390* Off/Online, Filtered Sorted by: CUU
PF3-End PF7-Up PF8-Down Select: - S
SEL CUU VOLSER DEVTYPE DSTAT VSTAT MSTAT ASTAT SYStem PAGE
190 TSO001 3390 Online Storage PermRes Alloc
191 TSO002 3390 Online Storage PermRes Alloc
192 TSO003 3390 Online Storage PermRes Alloc
193 3390 Offline PermRes Unalloc
194 3390 Offline PermRes Unalloc
195 3390 Offline PermRes Unalloc
196 3390 Offline PermRes Unalloc
197 3390 Offline PermRes Unalloc
198 3390 Offline PermRes Unalloc
199 3390 Offline PermRes Unalloc
19A 3390 Offline PermRes Unalloc
19B 3390 Offline PermRes Unalloc
19C 3390 Offline PermRes Unalloc
19D 3390 Offline PermRes Unalloc
19E 3390 Offline PermRes Unalloc
19F 3390 Offline PermRes Unalloc
1F0 3390 Offline PermRes Unalloc
1F1 3390 Offline PermRes Unalloc
1F2 3390 Offline PermRes Unalloc
1F3 3390 Offline PermRes Unalloc
From the list above, 1F0-1F2 (selected arbitrarily as unused) will be used for the three new volumes.
Tip: For each TK5 distribution update, check if your CUUs are used by new TK5 distribution by inspecting Hercules configuration files. If so, you need to retrofit changes!
3. Create Script to Define 3390 model-1 DASD Images Files
Hercules utility program, DASDINIT, will be used to add new DASD volumes.
FYI: Two other reference links on adding DASD to MVS 3.8J/Hercules are:
– Jay Moseley’s Add DASD article
– SDL Hercules Creating DASD article
Per computing platform, use Linux or Windows steps that follow.
Linux Host
– Using nano, create a script file using the following command:
sudo nano /root/mvs-tk5/my_hercmd
– Append (copy/paste) the below text to your edit session:
#!/bin/bash
#**********************************************************************
#*** ***
#*** Script: my_hercmd ***
#*** ***
#*** Purpose: Set PATH of Hercules binary libraries as performed ***
#*** by TK5 for executing Hercules commands ***
#*** (i.e DASDINIT) from host system prompt ***
#*** ***
#*** Updated: 2025-09-06 ***
#*** ***
#**********************************************************************
#
# set environment
#
a=`uname -m`
if [[ ${a:0:3} == 'arm' ]];then
hf=`readelf -A /proc/self/exe | grep Tag_ABI_VFP_args`
if [[ ${hf:2:3} == 'Tag' ]];then arch='arm';else arch='arm_softfloat';fi;fi
if [[ $a == 'aarch64' ]];then arch='aarch64'
else if [[ $a == 'x86_64' ]];then arch=64;else arch=32;fi;fi
system=`uname -s | awk '{print tolower($0)}'`
case $system in
linux)
force_arch=
export PATH=hercules/$system/$arch/bin:$PATH
export LD_LIBRARY_PATH=hercules/$system/$arch/lib:hercules/$system/$arch/lib/hercules:$LD_LIBRARY_PATH
;;
darwin)
if [[ $arch == '32' ]];then force_arch='arch -arch i386';else force_arch=;fi
export PATH=hercules/$system/bin:$PATH
export DYLD_LIBRARY_PATH=hercules/$system/lib:hercules/$system/lib/hercules:$DYLD_LIBRARY_PATH
;;
*)
echo "System $system not supported."
exit
;;
esac
#
# DASDINIT commands follow...
#
dasdinit -z -a /root/mvs-tk5/dasd/larb10.1f0 3390 larb10
dasdinit -z -a /root/mvs-tk5/dasd/larb11.1f1 3390 larb11
dasdinit -z -a /root/mvs-tk5/dasd/larb12.1f2 3390 larb12
– Save file
– Ensure script is executable by invoking the following command from tk5 terminal session:
chmod +x /root/mvs-tk5/my_hercmd
– Execute script by invoking the following command from tk5 terminal session:
./root/mvs-tk5/my_hercmd
–
Windows Host
– Using notepad, create a batch file using the following from Windows command prompt:
notepad m:/mvs-tk5/my_hercmd.bat
– A Notepad window is now open on desktop with no data content
– Append (copy/paste) the below text into your edit session:
@ECHO OFF
REM **********************************************************************
REM *** ***
REM *** Script: my_hercmd.bat ***
REM *** ***
REM *** Purpose: Set PATH of Hercules binary libraries as performed ***
REM *** by TK5 for executing Hercules commands ***
REM *** (i.e DASDINIT) from host system prompt ***
REM *** ***
REM *** Updated: 2025/09/06 ***
REM *** ***
REM **********************************************************************
setlocal
REM *
REM * set environment
REM *
SET ARCH=32
IF DEFINED ProgramFiles(x86) SET ARCH=64
SET PATH=m:\mvs-tk5\hercules\windows\%ARCH%\;%PATH%
REM ***
REM *** DASDINIT commands follow...
REM ***
dasdinit -z -a m:/mvs-tk5/dasd/larb10.1f0 3390 larb10
dasdinit -z -a m:/mvs-tk5/dasd/larb11.1f1 3390 larb11
dasdinit -z -a m:/mvs-tk5/dasd/larb12.1f2 3390 larb12
– Save file
– Execute batch file by invoking the following from Windows command prompt:
m:/mvs-tk5/my_hercmd.bat
–
Host system output from Windows host DASDINIT process. The output is similar for Linux except the directory names are in Linux format:
. . HHC02499I Hercules utility dasdinit - DASD image file creation program - version 4.7.0.11119-SDL-gf7d2360a HHC01414I (C) Copyright 1999-2024 by Roger Bowler, Jan Jaeger, and others HHC01417I ** The SDL 4.x Hyperion version of Hercules ** HHC01415I Build date: Mar 9 2024 at 20:27:46 HHC00462I 0:0000 CKD file m:/mvs-tk5/dasd/larb10.1f0: creating 3390 volume LARB10: 1114 cyls, 15 trks/cyl, 56832 bytes/track HHC00460I 0:0000 CKD file m:/mvs-tk5/dasd/larb10.1f0: 1114 cylinders successfully written HHC02423I DASD operation completed HHC02499I Hercules utility dasdinit - DASD image file creation program - version 4.7.0.11119-SDL-gf7d2360a HHC01414I (C) Copyright 1999-2024 by Roger Bowler, Jan Jaeger, and others HHC01417I ** The SDL 4.x Hyperion version of Hercules ** HHC01415I Build date: Mar 9 2024 at 20:27:46 HHC00462I 0:0000 CKD file m:/mvs-tk5/dasd/larb11.1f1: creating 3390 volume LARB11: 1114 cyls, 15 trks/cyl, 56832 bytes/track HHC00460I 0:0000 CKD file m:/mvs-tk5/dasd/larb11.1f1: 1114 cylinders successfully written HHC02423I DASD operation completed HHC02499I Hercules utility dasdinit - DASD image file creation program - version 4.7.0.11119-SDL-gf7d2360a HHC01414I (C) Copyright 1999-2024 by Roger Bowler, Jan Jaeger, and others HHC01417I ** The SDL 4.x Hyperion version of Hercules ** HHC01415I Build date: Mar 9 2024 at 20:27:46 HHC00462I 0:0000 CKD file m:/mvs-tk5/dasd/larb12.1f2: creating 3390 volume LARB12: 1114 cyls, 15 trks/cyl, 56832 bytes/track HHC00460I 0:0000 CKD file m:/mvs-tk5/dasd/larb12.1f2: 1114 cylinders successfully written HHC02423I DASD operation completed . .
4. Attach New DASD Volumes to Hercules
Hercules console commands can be invoked via Hercules HTTP Console ( see Browser Log Console section here ) or traditional Hercules console using the Hercules command prompt or MVS-to-Hercules-Command JCL ( see SYS2.JCLLIB(BSPHRCMD) ).
HTTP Console is assumed as the Hercules console (to enter Hercules and MVS console commands) in this post.
On your TK5 host machine, point your browser to the following URL:
http://localhost:8038/
to start the HTTP Console.
Execute the below three Hercules commands (per you TK5 host OS) via Hercules console:
Linux Host attach 1f0 3390 /root/mvs-tk5/dasd/larb10.1f0 cu=3880 attach 1f1 3390 /root/mvs-tk5/dasd/larb11.1f1 cu=3880 attach 1f2 3390 /root/mvs-tk5/dasd/larb12.1f2 cu=3880 -- or -- Windows Host attach 1f0 3390 m:/mvs-tk5/dasd/larb10.1f0 cu=3880 attach 1f1 3390 m:/mvs-tk5/dasd/larb11.1f1 cu=3880 attach 1f2 3390 m:/mvs-tk5/dasd/larb12.1f2 cu=3880
HTTP Console output from Windows host ATTACH commands. The output is similar for Linux except the directory names are in Linux format:
. . /17.21.49 $HASP000 OK /18.21.52 $HASP000 OK /19.21.55 $HASP000 OK /20.21.57 $HASP000 OK HHC01603I attach 1f0 3390 m:/mvs-tk5/dasd/larb10.1f0 cu=3880 HHC00414I 0:01F0 CCKD file m:/mvs-tk5/dasd/larb10.1f0: model 3390-1 cyls 1114 heads 15 tracks 16710 trklen 56832 HHC01603I attach 1f1 3390 m:/mvs-tk5/dasd/larb11.1f1 cu=3880 HHC00414I 0:01F1 CCKD file m:/mvs-tk5/dasd/larb11.1f1: model 3390-1 cyls 1114 heads 15 tracks 16710 trklen 56832 HHC01603I attach 1f2 3390 m:/mvs-tk5/dasd/larb12.1f2 cu=3880 HHC00414I 0:01F2 CCKD file m:/mvs-tk5/dasd/larb12.1f2: model 3390-1 cyls 1114 heads 15 tracks 16710 trklen 56832 . .
5. Initialize New DASD Volumes
Each volume will be initialized with 15 tracks for VTOC using ICKDSF (MVS Data Support Facility v13).
Using ISPF, submit the following JCL to MVS:
//INITDASD JOB (SETUP),'Init 3390',CLASS=A,MSGCLASS=X,
// MSGLEVEL=(1,1),NOTIFY=&SYSUID
//*
//ICKDSF EXEC PGM=ICKDSF13,REGION=4096K
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
INIT UNIT(1F0) -
VERIFY(LARB10) -
OWNER(HERCULES) -
VOLID(LARB10) -
VTOC(0,1,15)
INIT UNIT(1F1) -
VERIFY(LARB11) -
OWNER(HERCULES) -
VOLID(LARB11) -
VTOC(0,1,15)
INIT UNIT(1F2) -
VERIFY(LARB12) -
OWNER(HERCULES) -
VOLID(LARB12) -
VTOC(0,1,15)
//
Reply “/r x,U“, via Hercules console for each INIT request where x is the console outstanding ID.
HTTP Console output from INIT DASD MVS job. The output is the same for Linux host:
. . /21.08.16 JOB 1 $HASP100 INITDASD ON INTRDR INIT 3390 /21.08.16 JOB 1 $HASP373 INITDASD STARTED - INIT 1 - CLASS A - SYS TK5R /21.08.16 JOB 1 IEF403I INITDASD - STARTED - TIME=21.08.16 /21.08.16 JOB 1 *00 ICK003D REPLY U TO ALTER VOLUME 01F0 CONTENTS, ELSE T HHC00013I '/' input entered for console 0:0009: "r 0,u" r 0,u /21.09.21 IEE600I REPLY TO 00 IS;SUPPRESSED /21.09.21 JOB 1 *01 ICK003D REPLY U TO ALTER VOLUME 01F1 CONTENTS, ELSE T HHC00013I '/' input entered for console 0:0009: "r 1,u" r 1,u /21.09.43 IEE600I REPLY TO 01 IS;SUPPRESSED /21.09.43 JOB 1 *02 ICK003D REPLY U TO ALTER VOLUME 01F2 CONTENTS, ELSE T HHC00013I '/' input entered for console 0:0009: "r 2,u" r 2,u /21.09.55 IEE600I REPLY TO 02 IS;SUPPRESSED /21.09.55 JOB 1 IEF404I INITDASD - ENDED - TIME=21.09.55 /21.09.55 JOB 1 $HASP395 INITDASD ENDED /21.09.55 $HASP309 INIT 1 INACTIVE ******** C=A /21.09.55 JOB 1 $HASP150 INITDASD ON PRINTER1 102 LINES /21.09.55 $HASP160 PRINTER1 INACTIVE - CLASS=A /21.09.55 JOB 1 $HASP250 INITDASD IS PURGED . .
Sample job output:
IIIIIIIIII NN NN IIIIIIIIII TTTTTTTTTTTT DDDDDDDDD AAAAAAAAAA SSSSSSSSSS DDDDDDDDD IIIIIIIIII NNN NN IIIIIIIIII TTTTTTTTTTTT DDDDDDDDDD AAAAAAAAAAAA SSSSSSSSSSSS DDDDDDDDDD II NNNN NN II TT DD DD AA AA SS SS DD DD II NN NN NN II TT DD DD AA AA SS DD DD II NN NN NN II TT DD DD AA AA SSS DD DD II NN NN NN II TT DD DD AAAAAAAAAAAA SSSSSSSSS DD DD II NN NN NN II TT DD DD AAAAAAAAAAAA SSSSSSSSS DD DD II NN NN NN II TT DD DD AA AA SSS DD DD II NN NNNN II TT DD DD AA AA SS DD DD II NN NNN II TT DD DD AA AA SS SS DD DD IIIIIIIIII NN NN IIIIIIIIII TT DDDDDDDDDD AA AA SSSSSSSSSSSS DDDDDDDDDD IIIIIIIIII NN N IIIIIIIIII TT DDDDDDDDD AA AA SSSSSSSSSS DDDDDDDDD JJJJJJJJJJ 11 AAAAAAAAAA JJJJJJJJJJ 111 AAAAAAAAAAAA JJ 1111 AA AA JJ 11 AA AA JJ 11 AA AA JJ 11 AAAAAAAAAAAA JJ 11 AAAAAAAAAAAA JJ 11 AA AA JJ JJ 11 AA AA JJ JJ 11 AA AA JJJJJJJJ 1111111111 AA AA JJJJJJ 1111111111 AA AA ****A START JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 START A**** ****A START JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 START A**** ****A START JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 START A**** ****A START JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 START A**** J E S 2 J O B L O G 21.08.16 JOB 1 $HASP373 INITDASD STARTED - INIT 1 - CLASS A - SYS TK5R 21.08.16 JOB 1 IEF403I INITDASD - STARTED - TIME=21.08.16 21.08.16 JOB 1 *00 ICK003D REPLY U TO ALTER VOLUME 01F0 CONTENTS, ELSE T 21.09.21 JOB 1 R 00,SUPPRESSED 21.09.21 JOB 1 *01 ICK003D REPLY U TO ALTER VOLUME 01F1 CONTENTS, ELSE T 21.09.43 JOB 1 R 01,SUPPRESSED 21.09.43 JOB 1 *02 ICK003D REPLY U TO ALTER VOLUME 01F2 CONTENTS, ELSE T 21.09.55 JOB 1 R 02,SUPPRESSED 21.09.55 JOB 1 IEFACTRT - Stepname Procstep Program Retcode 21.09.55 JOB 1 INITDASD ICKDSF ICKDSF13 RC= 0000 21.09.55 JOB 1 IEF404I INITDASD - ENDED - TIME=21.09.55 21.09.55 JOB 1 $HASP395 INITDASD ENDED ------ JES2 JOB STATISTICS ------ 02 OCT 25 JOB EXECUTION DATE 22 CARDS READ 102 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1.64 MINUTES EXECUTION TIME 1 //INITDASD JOB (SETUP),'INIT 3390',CLASS=A,MSGCLASS=A, JOB 1 // MSGLEVEL=(1,1),NOTIFY=HERC01, IKJEFF10 // USER=HERC01,PASSWORD= GENERATED BY IKJEFF10 *** 2 //ICKDSF EXEC PGM=ICKDSF13,REGION=4096K 3 //SYSPRINT DD SYSOUT=* 4 //SYSIN DD * IEF236I ALLOC. FOR INITDASD ICKDSF IEF237I JES2 ALLOCATED TO SYSPRINT IEF237I JES2 ALLOCATED TO SYSIN ICK003D REPLY U TO ALTER VOLUME 01F0 CONTENTS, ELSE T ICK003D REPLY U TO ALTER VOLUME 01F1 CONTENTS, ELSE T ICK003D REPLY U TO ALTER VOLUME 01F2 CONTENTS, ELSE T IEF142I INITDASD ICKDSF - STEP WAS EXECUTED - COND CODE 0000 IEF285I JES2.JOB00001.SO0102 SYSOUT IEF285I JES2.JOB00001.SI0101 SYSIN IEF373I STEP /ICKDSF / START 25275.2108 IEF374I STEP /ICKDSF / STOP 25275.2109 CPU 0MIN 00.12SEC SRB 0MIN 00.04SEC VIRT 664K SYS 200K ************************************************************************************************************************************ * 1. Jobstep of job: INITDASD Stepname: ICKDSF Program name: ICKDSF13 Executed on 02.10.25 from 21.08.16 to 21.09.55 * * elapsed time 00:01:38,92 CPU-Identifier: TK5R Page-in: 0 * * CPU time 00:00:00,16 Virtual Storage used: 664K Page-out: 0 * * corr. CPU: 00:00:00,16 CPU time has been corrected by 1 / 1,0 multiplier * * * * I/O Operation * * Number of records read via DD * or DD DATA: 15 * * DMY.......0 DMY.......0 * * * * Charge for step (w/o SYSOUT): 0,26 * ************************************************************************************************************************************ IEF375I JOB /INITDASD/ START 25275.2108 IEF376I JOB /INITDASD/ STOP 25275.2109 CPU 0MIN 00.12SEC SRB 0MIN 00.04SEC ICKDSF - MVS DEVICE SUPPORT FACILITIES 13.0 TIME: 21:08:16 10/02/25 PAGE 1 INIT UNIT(1F0) - VERIFY(LARB10) - OWNER(HERCULES) - VOLID(LARB10) - VTOC(0,1,15) ICK00700I DEVICE INFORMATION FOR 01F0 IS CURRENTLY AS FOLLOWS: PHYSICAL DEVICE = 3390 STORAGE CONTROLLER = 3880 STORAGE CONTROL DESCRIPTOR = 05 DEVICE DESCRIPTOR = 02 ICK01307I DEFECTIVE-TRACK LIST IN HEXADECIMAL FOR VOLUME LARB10 ICK01310I NO DEFECTIVE TRACKS WERE FOUND. ICK01313I VOLUME CONTAINS 15 ALTERNATE TRACKS -- 15 AVAILABLE. ICK01314I VTOC IS LOCATED AT CCHH=X'0000 0001' AND IS 15 TRACKS. ICK00001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0 21:09:21 10/02/25 INIT UNIT(1F1) - VERIFY(LARB11) - OWNER(HERCULES) - VOLID(LARB11) - VTOC(0,1,15) ICKDSF - MVS DEVICE SUPPORT FACILITIES 13.0 TIME: 21:08:16 10/02/25 PAGE 2 ICK00700I DEVICE INFORMATION FOR 01F1 IS CURRENTLY AS FOLLOWS: PHYSICAL DEVICE = 3390 STORAGE CONTROLLER = 3880 STORAGE CONTROL DESCRIPTOR = 05 DEVICE DESCRIPTOR = 02 ICK01307I DEFECTIVE-TRACK LIST IN HEXADECIMAL FOR VOLUME LARB11 ICK01310I NO DEFECTIVE TRACKS WERE FOUND. ICK01313I VOLUME CONTAINS 15 ALTERNATE TRACKS -- 15 AVAILABLE. ICK01314I VTOC IS LOCATED AT CCHH=X'0000 0001' AND IS 15 TRACKS. ICK00001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0 21:09:43 10/02/25 INIT UNIT(1F2) - VERIFY(LARB12) - OWNER(HERCULES) - VOLID(LARB12) - VTOC(0,1,15) ICK00700I DEVICE INFORMATION FOR 01F2 IS CURRENTLY AS FOLLOWS: PHYSICAL DEVICE = 3390 STORAGE CONTROLLER = 3880 STORAGE CONTROL DESCRIPTOR = 05 ICKDSF - MVS DEVICE SUPPORT FACILITIES 13.0 TIME: 21:08:16 10/02/25 PAGE 3 DEVICE DESCRIPTOR = 02 ICK01307I DEFECTIVE-TRACK LIST IN HEXADECIMAL FOR VOLUME LARB12 ICK01310I NO DEFECTIVE TRACKS WERE FOUND. ICK01313I VOLUME CONTAINS 15 ALTERNATE TRACKS -- 15 AVAILABLE. ICK01314I VTOC IS LOCATED AT CCHH=X'0000 0001' AND IS 15 TRACKS. ICK00001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0 21:09:55 10/02/25 ICK00002I ICKDSF PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 0 IIIIIIIIII NN NN IIIIIIIIII TTTTTTTTTTTT DDDDDDDDD AAAAAAAAAA SSSSSSSSSS DDDDDDDDD IIIIIIIIII NNN NN IIIIIIIIII TTTTTTTTTTTT DDDDDDDDDD AAAAAAAAAAAA SSSSSSSSSSSS DDDDDDDDDD II NNNN NN II TT DD DD AA AA SS SS DD DD II NN NN NN II TT DD DD AA AA SS DD DD II NN NN NN II TT DD DD AA AA SSS DD DD II NN NN NN II TT DD DD AAAAAAAAAAAA SSSSSSSSS DD DD II NN NN NN II TT DD DD AAAAAAAAAAAA SSSSSSSSS DD DD II NN NN NN II TT DD DD AA AA SSS DD DD II NN NNNN II TT DD DD AA AA SS DD DD II NN NNN II TT DD DD AA AA SS SS DD DD IIIIIIIIII NN NN IIIIIIIIII TT DDDDDDDDDD AA AA SSSSSSSSSSSS DDDDDDDDDD IIIIIIIIII NN N IIIIIIIIII TT DDDDDDDDD AA AA SSSSSSSSSS DDDDDDDDD JJJJJJJJJJ 11 AAAAAAAAAA JJJJJJJJJJ 111 AAAAAAAAAAAA JJ 1111 AA AA JJ 11 AA AA JJ 11 AA AA JJ 11 AAAAAAAAAAAA JJ 11 AAAAAAAAAAAA JJ 11 AA AA JJ JJ 11 AA AA JJ JJ 11 AA AA JJJJJJJJ 1111111111 AA AA JJJJJJ 1111111111 AA AA ****A END JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 END A**** ****A END JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 END A**** ****A END JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 END A**** ****A END JOB 1 INITDASD INIT 3390 ROOM 9.09.55 PM 02 OCT 25 PRINTER1 SYS TK5R JOB 1 END A****
6. Make New DASD Volumes Available to MVS
Vary volumes online.
Execute the below MVS commands via Hercules console including slash ( / ) prefix):
/vary 1f0,online /vary 1f1,online /vary 1f2,online
HTTP Console output from Windows host /VARY commands. The output is the same for Linux host:
. . HHC00013I '/' input entered for console 0:0009: "vary 1f0,online" vary 1f0,online /21.12.49 IEE302I 1F0 ONLINE HHC00013I '/' input entered for console 0:0009: "vary 1f1,online" vary 1f1,online /21.12.59 IEE302I 1F1 ONLINE HHC00013I '/' input entered for console 0:0009: "vary 1f2,online" vary 1f2,online /21.13.07 IEE302I 1F2 ONLINE . .
Mount three volumes as STORAGE unit types.
Execute the below MVS commands via Hercules console including slash ( / ) prefix:
/mount 1f0,vol=(sl,larb10),use=storage /mount 1f1,vol=(sl,larb11),use=storage /mount 1f2,vol=(sl,larb12),use=storage
HTTP Console output from Windows host /MOUNT commands. The output is the same for Linux host:
. . HHC00013I '/' input entered for console 0:0009: "mount 1f0,vol=(sl,larb10),use=storage" mount 1f0,vol=(sl,larb10),use=storage /21.13.22 STC 25 $HASP100 MOUNT ON STCINRDR /21.13.22 STC 25 $HASP373 MOUNT STARTED /21.13.22 STC 25 IEF403I MOUNT - STARTED - TIME=21.13.22 /21.13.22 STC 25 IEF404I MOUNT - ENDED - TIME=21.13.22 /21.13.22 STC 25 $HASP395 MOUNT ENDED /21.13.22 STC 25 $HASP150 MOUNT ON PRINTER2 17 LINES /21.13.22 $HASP160 PRINTER2 INACTIVE - CLASS=Z /21.13.22 STC 25 $HASP250 MOUNT IS PURGED HHC00013I '/' input entered for console 0:0009: "mount 1f1,vol=(sl,larb11),use=storage" mount 1f1,vol=(sl,larb11),use=storage /21.13.33 STC 26 $HASP100 MOUNT ON STCINRDR /21.13.33 STC 26 $HASP373 MOUNT STARTED /21.13.33 STC 26 IEF403I MOUNT - STARTED - TIME=21.13.33 /21.13.33 STC 26 IEF404I MOUNT - ENDED - TIME=21.13.33 /21.13.33 STC 26 $HASP395 MOUNT ENDED /21.13.33 STC 26 $HASP150 MOUNT ON PRINTER2 17 LINES /21.13.33 $HASP160 PRINTER2 INACTIVE - CLASS=Z /21.13.33 STC 26 $HASP250 MOUNT IS PURGED HHC00013I '/' input entered for console 0:0009: "mount 1f2,vol=(sl,larb12),use=storage" mount 1f2,vol=(sl,larb12),use=storage /21.13.47 STC 27 $HASP100 MOUNT ON STCINRDR /21.13.47 STC 27 $HASP373 MOUNT STARTED /21.13.47 STC 27 IEF403I MOUNT - STARTED - TIME=21.13.47 /21.13.47 STC 27 IEF404I MOUNT - ENDED - TIME=21.13.47 /21.13.47 STC 27 $HASP395 MOUNT ENDED /21.13.47 STC 27 $HASP150 MOUNT ON PRINTER2 17 LINES /21.13.47 $HASP160 PRINTER2 INACTIVE - CLASS=Z /21.13.47 STC 27 $HASP250 MOUNT IS PURGED . .
Mount requests submit an individual STC (Started Task) job. Sample job output for each mount request:
MM MM OOOOOOOOOOOO UU UU NN NN TTTTTTTTTTTT MMM MMM OOOOOOOOOOOO UU UU NNN NN TTTTTTTTTTTT MMMM MMMM OO OO UU UU NNNN NN TT MM MM MM MM OO OO UU UU NN NN NN TT MM MMMM MM OO OO UU UU NN NN NN TT MM MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NNNN TT MM MM OO OO UU UU NN NNN TT MM MM OOOOOOOOOOOO UUUUUUUUUUUU NN NN TT MM MM OOOOOOOOOOOO UUUUUUUUUU NN N TT SSSSSSSSSS 2222222222 555555555555 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 555555555555 ZZZZZZZZZZZZ SS SS 22 22 55 ZZ SS 22 55 ZZ SSS 22 55 ZZ SSSSSSSSS 22 555555555 ZZZZZZZ SSSSSSSSS 22 5555555555 ZZZZZZZ SSS 22 55 ZZ SS 22 55 ZZ SS SS 22 55 ZZ SSSSSSSSSSSS 222222222222 555555555555 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 55555555555 ZZZZZZZZZZZZ ****Z START STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 START Z**** ****Z START STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 START Z**** ****Z START STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 START Z**** ****Z START STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 START Z**** J E S 2 J O B L O G 21.13.22 STC 25 $HASP373 MOUNT STARTED 21.13.22 STC 25 IEF403I MOUNT - STARTED - TIME=21.13.22 21.13.22 STC 25 IEF404I MOUNT - ENDED - TIME=21.13.22 21.13.22 STC 25 $HASP395 MOUNT ENDED ------ JES2 JOB STATISTICS ------ 02 OCT 25 JOB EXECUTION DATE 4 CARDS READ 17 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 0.00 MINUTES EXECUTION TIME 1 //MOUNT JOB MSGLEVEL=1,PRTY=11 STC 25 2 //STARTING EXEC PROC=IEEVMPCR 3 XXIEFPROC EXEC PGM=IEEVMNT2,PARM='PRIVATE',TIME=(00,30) 00020019 4 //IEFPROC.IEFRDER DD UNIT=1F0,LABEL=(,SL), X // VOLUME=(PRIVATE,,,SER=LARB10) X/IEFRDER DD UNIT=2314,DSNAME=SYSMOUNT,DISP=(OLD,KEEP),LABEL=(,SL) 00040001 IEF236I ALLOC. FOR MOUNT 1F0 IEF237I 1F0 ALLOCATED TO IEFRDER IEF142I MOUNT 1F0 - STEP WAS EXECUTED - COND CODE 0000 IEF285I SYSMOUNT KEPT IEF285I VOL SER NOS= LARB10. MM MM OOOOOOOOOOOO UU UU NN NN TTTTTTTTTTTT MMM MMM OOOOOOOOOOOO UU UU NNN NN TTTTTTTTTTTT MMMM MMMM OO OO UU UU NNNN NN TT MM MM MM MM OO OO UU UU NN NN NN TT MM MMMM MM OO OO UU UU NN NN NN TT MM MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NNNN TT MM MM OO OO UU UU NN NNN TT MM MM OOOOOOOOOOOO UUUUUUUUUUUU NN NN TT MM MM OOOOOOOOOOOO UUUUUUUUUU NN N TT SSSSSSSSSS 2222222222 555555555555 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 555555555555 ZZZZZZZZZZZZ SS SS 22 22 55 ZZ SS 22 55 ZZ SSS 22 55 ZZ SSSSSSSSS 22 555555555 ZZZZZZZ SSSSSSSSS 22 5555555555 ZZZZZZZ SSS 22 55 ZZ SS 22 55 ZZ SS SS 22 55 ZZ SSSSSSSSSSSS 222222222222 555555555555 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 55555555555 ZZZZZZZZZZZZ ****Z END STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 END Z**** ****Z END STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 END Z**** ****Z END STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 END Z**** ****Z END STC 25 MOUNT ROOM 9.13.22 PM 02 OCT 25 PRINTER2 SYS TK5R STC 25 END Z**** MM MM OOOOOOOOOOOO UU UU NN NN TTTTTTTTTTTT MMM MMM OOOOOOOOOOOO UU UU NNN NN TTTTTTTTTTTT MMMM MMMM OO OO UU UU NNNN NN TT MM MM MM MM OO OO UU UU NN NN NN TT MM MMMM MM OO OO UU UU NN NN NN TT MM MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NNNN TT MM MM OO OO UU UU NN NNN TT MM MM OOOOOOOOOOOO UUUUUUUUUUUU NN NN TT MM MM OOOOOOOOOOOO UUUUUUUUUU NN N TT SSSSSSSSSS 2222222222 6666666666 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 666666666666 ZZZZZZZZZZZZ SS SS 22 22 66 66 ZZ SS 22 66 ZZ SSS 22 66 ZZ SSSSSSSSS 22 66666666666 ZZZZZZZ SSSSSSSSS 22 666666666666 ZZZZZZZ SSS 22 66 66 ZZ SS 22 66 66 ZZ SS SS 22 66 66 ZZ SSSSSSSSSSSS 222222222222 666666666666 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 6666666666 ZZZZZZZZZZZZ ****Z START STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 START Z**** ****Z START STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 START Z**** ****Z START STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 START Z**** ****Z START STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 START Z**** J E S 2 J O B L O G 21.13.33 STC 26 $HASP373 MOUNT STARTED 21.13.33 STC 26 IEF403I MOUNT - STARTED - TIME=21.13.33 21.13.33 STC 26 IEF404I MOUNT - ENDED - TIME=21.13.33 21.13.33 STC 26 $HASP395 MOUNT ENDED ------ JES2 JOB STATISTICS ------ 02 OCT 25 JOB EXECUTION DATE 4 CARDS READ 17 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 0.00 MINUTES EXECUTION TIME 1 //MOUNT JOB MSGLEVEL=1,PRTY=11 STC 26 2 //STARTING EXEC PROC=IEEVMPCR 3 XXIEFPROC EXEC PGM=IEEVMNT2,PARM='PRIVATE',TIME=(00,30) 00020019 4 //IEFPROC.IEFRDER DD UNIT=1F1,LABEL=(,SL), X // VOLUME=(PRIVATE,,,SER=LARB11) X/IEFRDER DD UNIT=2314,DSNAME=SYSMOUNT,DISP=(OLD,KEEP),LABEL=(,SL) 00040001 IEF236I ALLOC. FOR MOUNT 1F1 IEF237I 1F1 ALLOCATED TO IEFRDER IEF142I MOUNT 1F1 - STEP WAS EXECUTED - COND CODE 0000 IEF285I SYSMOUNT KEPT IEF285I VOL SER NOS= LARB11. MM MM OOOOOOOOOOOO UU UU NN NN TTTTTTTTTTTT MMM MMM OOOOOOOOOOOO UU UU NNN NN TTTTTTTTTTTT MMMM MMMM OO OO UU UU NNNN NN TT MM MM MM MM OO OO UU UU NN NN NN TT MM MMMM MM OO OO UU UU NN NN NN TT MM MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NNNN TT MM MM OO OO UU UU NN NNN TT MM MM OOOOOOOOOOOO UUUUUUUUUUUU NN NN TT MM MM OOOOOOOOOOOO UUUUUUUUUU NN N TT SSSSSSSSSS 2222222222 6666666666 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 666666666666 ZZZZZZZZZZZZ SS SS 22 22 66 66 ZZ SS 22 66 ZZ SSS 22 66 ZZ SSSSSSSSS 22 66666666666 ZZZZZZZ SSSSSSSSS 22 666666666666 ZZZZZZZ SSS 22 66 66 ZZ SS 22 66 66 ZZ SS SS 22 66 66 ZZ SSSSSSSSSSSS 222222222222 666666666666 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 6666666666 ZZZZZZZZZZZZ ****Z END STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 END Z**** ****Z END STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 END Z**** ****Z END STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 END Z**** ****Z END STC 26 MOUNT ROOM 9.13.33 PM 02 OCT 25 PRINTER2 SYS TK5R STC 26 END Z**** MM MM OOOOOOOOOOOO UU UU NN NN TTTTTTTTTTTT MMM MMM OOOOOOOOOOOO UU UU NNN NN TTTTTTTTTTTT MMMM MMMM OO OO UU UU NNNN NN TT MM MM MM MM OO OO UU UU NN NN NN TT MM MMMM MM OO OO UU UU NN NN NN TT MM MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NNNN TT MM MM OO OO UU UU NN NNN TT MM MM OOOOOOOOOOOO UUUUUUUUUUUU NN NN TT MM MM OOOOOOOOOOOO UUUUUUUUUU NN N TT SSSSSSSSSS 2222222222 777777777777 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 77777777777 ZZZZZZZZZZZZ SS SS 22 22 77 77 ZZ SS 22 77 ZZ SSS 22 77 ZZ SSSSSSSSS 22 77 ZZZZZZZ SSSSSSSSS 22 77 ZZZZZZZ SSS 22 77 ZZ SS 22 77 ZZ SS SS 22 77 ZZ SSSSSSSSSSSS 222222222222 77 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 77 ZZZZZZZZZZZZ ****Z START STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 START Z**** ****Z START STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 START Z**** ****Z START STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 START Z**** ****Z START STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 START Z**** J E S 2 J O B L O G 21.13.47 STC 27 $HASP373 MOUNT STARTED 21.13.47 STC 27 IEF403I MOUNT - STARTED - TIME=21.13.47 21.13.47 STC 27 IEF404I MOUNT - ENDED - TIME=21.13.47 21.13.47 STC 27 $HASP395 MOUNT ENDED ------ JES2 JOB STATISTICS ------ 02 OCT 25 JOB EXECUTION DATE 4 CARDS READ 17 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 0.00 MINUTES EXECUTION TIME 1 //MOUNT JOB MSGLEVEL=1,PRTY=11 STC 27 2 //STARTING EXEC PROC=IEEVMPCR 3 XXIEFPROC EXEC PGM=IEEVMNT2,PARM='PRIVATE',TIME=(00,30) 00020019 4 //IEFPROC.IEFRDER DD UNIT=1F2,LABEL=(,SL), X // VOLUME=(PRIVATE,,,SER=LARB12) X/IEFRDER DD UNIT=2314,DSNAME=SYSMOUNT,DISP=(OLD,KEEP),LABEL=(,SL) 00040001 IEF236I ALLOC. FOR MOUNT 1F2 IEF237I 1F2 ALLOCATED TO IEFRDER IEF142I MOUNT 1F2 - STEP WAS EXECUTED - COND CODE 0000 IEF285I SYSMOUNT KEPT IEF285I VOL SER NOS= LARB12. MM MM OOOOOOOOOOOO UU UU NN NN TTTTTTTTTTTT MMM MMM OOOOOOOOOOOO UU UU NNN NN TTTTTTTTTTTT MMMM MMMM OO OO UU UU NNNN NN TT MM MM MM MM OO OO UU UU NN NN NN TT MM MMMM MM OO OO UU UU NN NN NN TT MM MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NN NN TT MM MM OO OO UU UU NN NNNN TT MM MM OO OO UU UU NN NNN TT MM MM OOOOOOOOOOOO UUUUUUUUUUUU NN NN TT MM MM OOOOOOOOOOOO UUUUUUUUUU NN N TT SSSSSSSSSS 2222222222 777777777777 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 77777777777 ZZZZZZZZZZZZ SS SS 22 22 77 77 ZZ SS 22 77 ZZ SSS 22 77 ZZ SSSSSSSSS 22 77 ZZZZZZZ SSSSSSSSS 22 77 ZZZZZZZ SSS 22 77 ZZ SS 22 77 ZZ SS SS 22 77 ZZ SSSSSSSSSSSS 222222222222 77 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 77 ZZZZZZZZZZZZ ****Z END STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 END Z**** ****Z END STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 END Z**** ****Z END STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 END Z**** ****Z END STC 27 MOUNT ROOM 9.13.47 PM 02 OCT 25 PRINTER2 SYS TK5R STC 27 END Z****
7. Display New DASD Volumes
Each volume is now accessible by MVS.
Using ISPF DFSPC add-on (=3.7.F), below screen snippet shows new volumes, LARB10-LARB12, with zero (0) Use Pct:
mm/dd/ccyy.jjj hh:mm:ss ----- DASD Freespace -------------------------------
COMMAND ===> SCROLL ===> CSR
ROW 10 OF 27
HERC01 PDFSPC1
VOLSER: *ALL* Sorted by: VOL
PF3-End PF7-Up PF8-Down Select: - S
-----FREE----- -Vol- 2 4 6 8 0 Use
S CUU VOLSER DEVTYPE Cyls Trks Exts Cyls 0----0----0----0----0----0 Pct
_ 343 CBTCAT 3350 0193 0005 0002 00555 ----------------> 65
_ 340 CBT000 3350 0000 0008 0001 00555 -------------------------> 100
_ 341 CBT001 3350 0013 0006 0002 00555 ------------------------> 98
_ 342 CBT002 3350 0036 0011 0001 00555 -----------------------> 94
_ 380 INT001 3380 0749 0011 0002 00886 ---> 15
_ 1F0 LARB10 3390 1111 0014 0001 01114 0
_ 1F1 LARB11 3390 1111 0014 0001 01114 0
_ 1F2 LARB12 3390 1111 0014 0001 01114 0
_ 248 PAGE00 3350 0074 0000 0001 00560 ---------------------> 87
_ 249 SPOOL0 3350 0049 0000 0001 00555 ----------------------> 91
_ 34B SRCCAT 3350 0470 0012 0002 00560 ----> 16
_ 348 SRC000 3350 0008 0051 0002 00560 ------------------------> 98
_ 349 SRC001 3350 0009 0010 0001 00560 ------------------------> 98
_ 34A SRC002 3350 0014 0010 0001 00560 ------------------------> 98
_ 247 SYSCPK 3350 0246 0010 0001 00560 --------------> 56
_ 391 TK5CAT 3390 1094 0014 0003 01114 > 2
_ 392 TK5DLB 3390 0614 0150 0014 01114 -----------> 44
_ 390 TK5RES 3390 0572 0048 0014 01114 ------------> 48
_ 298 TK5001 3390 0842 0038 0017 01114 ------> 24
8. Define New Group
Edit PDS member, SYS1.PARMLIB(EDT00), and add LARB1 entry as shown below as line 25.:
RFEEDIT SYS1.PARMLIB(EDT00) - 1.03
Command ===>
000001 * IF CC1=*, THEN THIS IS A COMMENT
000002 * CC1=UNITNAME YOU WISH TO UPDATE/ADD
000003 * FOLLOWED BY A SPACE AND THE VOLSER (1-6 CHARS "*" FOR WILDCARD OK)
000004 * OR FOLLOWED BY /CUU OR /CUU-CUU OR ("*" FOR WILDCARDS OK)
000005 * EX: 12345678901234567890
000006 * * THIS IS A COMMENT
000007 * * ADD PUB003 TO SYSDA UNITNAME POOL
000008 * SYSDA PUB003
000009 * * ADD ALL PUB VOLUMES TO SYSDA UNITNAME POOL
000010 * SYSDA PUB*
000011 * * ADD UNIT 247 TO SYSDA POOL
000012 * SYSDA /247
000013 * * ADD UNITS 240 THROUGH 24F TO SYSDA UNITNAME POOL
000014 * SYSDA /24*
000015 * * ADD UNITS 240 THROUGH 244 TO SYSDA UNITNAME POOL
000016 * SYSDA /240-244
000017 * * REMOVE UNIT 443 FROM TAPE9 UNITNAME POOL
000018 * -TAPE9 /443
000019 * * ADD X'420-42F' ALL X'5XX' AND X'440-45F' TO TAPE1 UNITNAME
000020 * TAPE1 /42*,/5*,/440-45F
000021 TEMP WORK*
000022 PUBLIC TSO*
000023 SPOOL SPOOL*
000024 TSO TSO0*
000025 LARB1 LARB1*
Save member.
Note: SYS1.PARMLIB(EDT00) must be reviewed and possibly edited with each TK5 distribution!!!
9. Update EDT with New Group
This is a new group. Therefore, updating the EDT should have no adverse affects on MVS.
Execute the below MVS command via Hercules console including slash ( / ) prefix:
/S DYNAMASK
After JOB completion, EDT is updated. Sample STC (Started Task) job output:
DDDDDDDDD YY YY NN NN AAAAAAAAAA MM MM AAAAAAAAAA SSSSSSSSSS KK KK DDDDDDDDDD YY YY NNN NN AAAAAAAAAAAA MMM MMM AAAAAAAAAAAA SSSSSSSSSSSS KK KK DD DD YY YY NNNN NN AA AA MMMM MMMM AA AA SS SS KK KK DD DD YY YY NN NN NN AA AA MM MM MM MM AA AA SS KK KK DD DD YY YY NN NN NN AA AA MM MMMM MM AA AA SSS KK KK DD DD YYYY NN NN NN AAAAAAAAAAAA MM MM MM AAAAAAAAAAAA SSSSSSSSS KKKKKKK DD DD YY NN NN NN AAAAAAAAAAAA MM MM AAAAAAAAAAAA SSSSSSSSS KKKKKKK DD DD YY NN NN NN AA AA MM MM AA AA SSS KK KK DD DD YY NN NNNN AA AA MM MM AA AA SS KK KK DD DD YY NN NNN AA AA MM MM AA AA SS SS KK KK DDDDDDDDDD YY NN NN AA AA MM MM AA AA SSSSSSSSSSSS KK KK DDDDDDDDD YY NN N AA AA MM MM AA AA SSSSSSSSSS KK KK SSSSSSSSSS 2222222222 8888888888 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 888888888888 ZZZZZZZZZZZZ SS SS 22 22 88 88 ZZ SS 22 88 88 ZZ SSS 22 88 88 ZZ SSSSSSSSS 22 88888888 ZZZZZZZ SSSSSSSSS 22 88888888 ZZZZZZZ SSS 22 88 88 ZZ SS 22 88 88 ZZ SS SS 22 88 88 ZZ SSSSSSSSSSSS 222222222222 888888888888 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 8888888888 ZZZZZZZZZZZZ ****Z START STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 START Z**** ****Z START STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 START Z**** ****Z START STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 START Z**** ****Z START STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 START Z**** J E S 2 J O B L O G 21.16.57 STC 28 $HASP373 DYNAMASK STARTED 21.16.57 STC 28 IEF403I DYNAMASK - STARTED - TIME=21.16.57 21.17.02 STC 28 DMSK00I DYNAMASK DONE **** 21.17.02 STC 28 DMSK06I START 21.17.02 STC 28 IEF404I DYNAMASK - ENDED - TIME=21.17.02 21.17.02 STC 28 $HASP395 DYNAMASK ENDED ------ JES2 JOB STATISTICS ------ 02 OCT 25 JOB EXECUTION DATE 2 CARDS READ 28 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 0.08 MINUTES EXECUTION TIME 1 //DYNAMASK JOB MSGLEVEL=1 STC 28 2 //STARTING EXEC DYNAMASK 3 XXDYNAMASK PROC M=EDT00,SO=A,P='START IPL POSTPROCESS' 00010000 4 XXDYNAMASK EXEC PGM=DYNAMASK,PARM=&P 00020000 5 XXSYSIN DD DISP=SHR,DSN=SYS1.PARMLIB(&M.) 00030000 6 XXSYSPRINT DD SYSOUT=&SO 00040000 STMT NO. MESSAGE - 4 IEF653I SUBSTITUTION JCL - PGM=DYNAMASK,PARM=START IPL POSTPROCESS 5 IEF653I SUBSTITUTION JCL - DISP=SHR,DSN=SYS1.PARMLIB(EDT00) 6 IEF653I SUBSTITUTION JCL - SYSOUT=A IEF236I ALLOC. FOR DYNAMASK DYNAMASK IEF237I 390 ALLOCATED TO SYSIN IEF237I JES2 ALLOCATED TO SYSPRINT DMSK00I DYNAMASK DONE **** DMSK06I START IEF142I DYNAMASK DYNAMASK - STEP WAS EXECUTED - COND CODE 0000 IEF285I SYS1.PARMLIB KEPT IEF285I VOL SER NOS= TK5RES. IEF285I JES2.STC00028.SO0101 SYSOUT DDDDDDDDD YY YY NN NN AAAAAAAAAA MM MM AAAAAAAAAA SSSSSSSSSS KK KK DDDDDDDDDD YY YY NNN NN AAAAAAAAAAAA MMM MMM AAAAAAAAAAAA SSSSSSSSSSSS KK KK DD DD YY YY NNNN NN AA AA MMMM MMMM AA AA SS SS KK KK DD DD YY YY NN NN NN AA AA MM MM MM MM AA AA SS KK KK DD DD YY YY NN NN NN AA AA MM MMMM MM AA AA SSS KK KK DD DD YYYY NN NN NN AAAAAAAAAAAA MM MM MM AAAAAAAAAAAA SSSSSSSSS KKKKKKK DD DD YY NN NN NN AAAAAAAAAAAA MM MM AAAAAAAAAAAA SSSSSSSSS KKKKKKK DD DD YY NN NN NN AA AA MM MM AA AA SSS KK KK DD DD YY NN NNNN AA AA MM MM AA AA SS KK KK DD DD YY NN NNN AA AA MM MM AA AA SS SS KK KK DDDDDDDDDD YY NN NN AA AA MM MM AA AA SSSSSSSSSSSS KK KK DDDDDDDDD YY NN N AA AA MM MM AA AA SSSSSSSSSS KK KK SSSSSSSSSS 2222222222 8888888888 ZZZZZZZZZZZZ SSSSSSSSSSSS 222222222222 888888888888 ZZZZZZZZZZZZ SS SS 22 22 88 88 ZZ SS 22 88 88 ZZ SSS 22 88 88 ZZ SSSSSSSSS 22 88888888 ZZZZZZZ SSSSSSSSS 22 88888888 ZZZZZZZ SSS 22 88 88 ZZ SS 22 88 88 ZZ SS SS 22 88 88 ZZ SSSSSSSSSSSS 222222222222 888888888888 ZZZZZZZZZZZ SSSSSSSSSS 222222222222 8888888888 ZZZZZZZZZZZZ ****Z END STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 END Z**** ****Z END STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 END Z**** ****Z END STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 END Z**** ****Z END STC 28 DYNAMASK ROOM 9.17.02 PM 02 OCT 25 PRINTER2 SYS TK5R STC 28 END Z****
10. Display EDT with New Group
Display updated EDT using TSO command, UNITMAPS.
Several screens will display on terminal as the EDT is a lengthy table.
Below is a representative snippet of the tail-end EDT which includes the new group:
. . . 130 131 132 133 134 135 136 137 138 139 13A 13B 13C 13D 13E 13F 230 231 232 233 234 235 236 237 238 239 23A 23B 23C 23D 23E 23F 330 331 332 333 334 335 336 337 338 339 33A 33B 33C 33D 33E 33F TEMP 290 291 292 293 PUBLIC 190 191 192 SPOOL 249 LARB1 1F0 1F1 1F2 ***
11. Test New Group
Using TSO, submit the below JCL to create three datasets on UNIT=LARB1:
//NEWGRP01 JOB LB,'Three DSNs on LARB1',CLASS=A,MSGCLASS=X,
// MSGLEVEL=(1,1),NOTIFY=&SYSUID
//* ----------------------------------------------------------------
//* Create 3 DSNs using LARB1 DASD group
//* ----------------------------------------------------------------
//STEP000 EXEC PGM=IEFBR14
//DELDSN1 DD DISP=(MOD,DELETE),DSN=HERC01.LARB1.DSN1,
// SPACE=(TRK,(1,1)),UNIT=LARB1
//DELDSN2 DD DISP=(MOD,DELETE),DSN=HERC01.LARB1.DSN2,
// SPACE=(TRK,(1,1)),UNIT=LARB1
//DELDSN3 DD DISP=(MOD,DELETE),DSN=HERC01.LARB1.DSN3,
// SPACE=(TRK,(1,1)),UNIT=LARB1
//CR8DSN1 DD DISP=(NEW,CATLG),DSN=HERC01.LARB1.DSN1,
// DCB=(DSORG=PS,RECFM=U),
// SPACE=(TRK,(1,1)),UNIT=LARB1
//CR8DSN2 DD DISP=(NEW,CATLG),DSN=HERC01.LARB1.DSN2,
// DCB=(DSORG=PS,RECFM=U),
// SPACE=(TRK,(1,1)),UNIT=LARB1
//CR8DSN3 DD DISP=(NEW,CATLG),DSN=HERC01.LARB1.DSN3,
// DCB=(DSORG=PS,RECFM=U),
// SPACE=(TRK,(1,1)),UNIT=LARB1
//
Using RFE DSLIST (=3,4), list DSNs with Data Set Name Prefix of HERC01.LARB1.
Below snippet shows the 3 DSNs residing on volumes LARB10, LARB11 and LARB12:
---------------------------------------------------------- RFE DSLIST -------
Command ===>
S DATA-SET-NAME------------------------------- VOLUME ALTRK USTRK ORG FRMT % XT
' HERC01.LARB1.DSN1 LARB10 1 PS U 0 1
' HERC01.LARB1.DSN2 LARB11 1 PS U 0 1
' HERC01.LARB1.DSN3 LARB12 1 PS U 0 1
**END** TOTALS: 3 TRKS ALLOC 0 TRKS USED 3 EXTENTS
12. Harden DASD Configuration
Tip: This site from Tommy Sprinkle provides a convenient and handy VATLSTxx reference aid.
Edit PDS member, SYS1.PARMLIB(VATLST00), and add LARB10-LARB12 DASD entry as shown below on line 12:
Note: If usermods ZP60041, ZP60042 and ZP60043 (from Nov 2021, or later) are installed on your MVS 3.8J system, masking notation can be used in VATLSTxx (and IEAAPFxx) PARMLIB entries. Add single line 12 entry. Otherwise, use original notation for each volume as shown on grouped lines 12-14.
RFEEDIT SYS1.PARMLIB(VATLST00) - 1.44
Command ===>
****** ****Zap****Autosave************************************ Top of Data *****
000001 CBT* ,1,2,3350 ,N CBT Files (#1) + SYS1.UCAT.CBT
000002 DLIB01,1,2,3350 ,N DLIB of OS/VS2 rel. 1
000003 INT001,0,2,3380 ,N Intercomm volume
000004 PAGE* ,1,2,3350 ,N MVS 3.8 Page Disk
000005 ROB* ,0,2,3390 ,N Robs pack
000006 SPOOL0,1,2,3350 ,N MVS 3.8 JES Spool Disk
000007 SRC* ,1,2,3350 ,N MVS Source code
000008 SYSCPK,1,2,3350 ,N Compiler/language pack
000009 TK* ,0,2,3390 ,N MVS Volumes + SYS1.M/UCAT.TK5
000010 TSO* ,0,0,3390 ,N TSO volumes + SYS1.UCAT.TSO
000011 WORK* ,0,1,3390 ,N WORKPACKS, mounted PUBLIC
000012 LARB1*,1,0,3390 ,N LARB1 DASD Group, STORAGE
-- or ---
000012 LARB10,1,0,3390 ,N LARB1 DASD Group, STORAGE
000013 LARB11,1,0,3390 ,N LARB1 DASD Group, STORAGE
000014 LARB12,1,0,3390 ,N LARB1 DASD Group, STORAGE
Save member.
Note: SYS1.PARMLIB(VATLST00) must be reviewed and possibly edited with each TK5 distribution!!!
Being that TK5 is a derivate of TK4- version 8 distribution, Hercules configuration user customizations can be stored in one of ten files (01-10) in the local_conf directory for inclusion when Hercules is started as recommended (same files exist for regardless of host platform):
root@tk5-pub:~/mvs-tk5/local_conf# ls
01 02 03 04 05 06 07 08 09 10 tcpnje
Edit Hercules configuration file using the following command (in this case, file 01 is being utilized) based on host platform:
Linux Host sudo nano /root/mvs-tk5/local_conf/01 -- or -- Windows Host notepad m:/mvs-tk5/local_conf/01
Append (copy/paste) the below text to your edit session:
#**********************************************************************
#*** DASD images for LARB1 group ***
#**********************************************************************
01F0 3390 dasd/larb10.1f0
01F1 3390 dasd/larb11.1f1
01F2 3390 dasd/larb12.1f2
Save file.
13. IPL MVS 3.8J
At this point, tk5 system is ready for IPL to automatically apply new DASD Image Files to Hercules emulator and mount new DASD volumes under MVS 3.8J.
After IPL, ensure EDT is updated, new volumes are in place, and re-run IEFBR14 to test UNIT=LARB1.
Sample HTTP console output with new volumes listed after IPL:
.
.
HHC01437I Config file[18] conf/tk5.cnf: including file conf/tk5_updates/09
HHC01437I Config file[19] conf/tk5.cnf: including file conf/tk5_updates/10
HHC01437I Config file[107] conf/tk5.cnf: including file conf/local.cnf
HHC01437I Config file[10] conf/tk5.cnf: including file local_conf/tcpnje
HHC01437I Config file[11] conf/tk5.cnf: including file local_conf/01
HHC00414I 0:01F0 CCKD file dasd/larb10.1f0: model 3390-1 cyls 1114 heads 15 tracks 16710 trklen 56832
HHC00414I 0:01F1 CCKD file dasd/larb11.1f1: model 3390-1 cyls 1114 heads 15 tracks 16710 trklen 56832
HHC00414I 0:01F2 CCKD file dasd/larb12.1f2: model 3390-1 cyls 1114 heads 15 tracks 16710 trklen 56832
HHC01437I Config file[12] conf/tk5.cnf: including file local_conf/02
HHC01437I Config file[13] conf/tk5.cnf: including file local_conf/03
HHC01437I Config file[14] conf/tk5.cnf: including file local_conf/04
HHC01437I Config file[15] conf/tk5.cnf: including file local_conf/05
HHC01437I Config file[16] conf/tk5.cnf: including file local_conf/06
HHC01437I Config file[17] conf/tk5.cnf: including file local_conf/07
HHC01437I Config file[18] conf/tk5.cnf: including file local_conf/08
HHC01437I Config file[19] conf/tk5.cnf: including file local_conf/09
HHC01437I Config file[20] conf/tk5.cnf: including file local_conf/10
HHC02260I Script 1: begin processing file scripts/ipl.rc
HHC01603I hao tgt MVS038J
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/tk5.rc
HHC00077I The command was placed at index 0
HHC00100I Thread id 000032a0, prio 4, name 'hao_thread' started
HHC01603I hao tgt IEA101A
.
.
If all OK, congratulations! You are done with this task!!!
One final note — Save personal notation (and backups) of your specific configuration modifications (Hercules and MVS) should it be necessary to recover those changes at a later date!!
Closing
The tk5 demo system is updated with the above implementation of UNIT=LARB1 group.
Please use the comment box below to communicate any suggestions, improvements, corrections or issues for this post.
Enjoy your MVS 3.8J mainframe.
Larry Belmontes