One-stage generation

In one-stage generation, run the AMDSAOSG program as a single job, using the AMDSADMP macro you have coded as input data on the GENPARMS control statement. The stand-alone dump utility program, AMDSAOSG, initializes a stand-alone dump residence volume in one job by dynamically allocating data sets and invoking the appropriate programs. To run the one-stage generation program, indicate one AMDSADMP macro as a control statement for DDNAME GENPARMS.
Figure 1. Example: One-stage generation
//SADMPGEN JOB MSGLEVEL=(1,1)         
//OSG      EXEC PGM=AMDSAOSG,REGION=5M 
//SYSLIB   DD DSN=SYS1.MACLIB,DISP=SHR 
//         DD DSN=SYS1.MODGEN,DISP=SHR 
//TRK0TEXT DD DSN=&TRK0TEXT,DISP=(,PASS), 
//            SPACE=(4096,(2,1)),UNIT=SYSDA  
//DSFSYSIN DD DSN=&DSFSYSIN,DISP=(,PASS), 
//            SPACE=(80,(4,1)),UNIT=SYSDA
//GENPRINT DD DSN=SADMP.LIST,DISP=OLD      
//GENPARMS DD * 
					AMDSADMP IPL=DSYSDA,VOLSER=SPOOL2,                            X
               CONSOLE=(1A0,3277)
         END
/*
//PUTIPL   EXEC PGM=ICKDSF,REGION=5M
//IPLDEV   DD DISP=OLD,UNIT=SYSDA,
//            VOL=(PRIVATE,RETAIN,SER=SPOOL2)
//TRK0TEXT DD DSN=&TRK0TEXT,DISP=(OLD,DELETE) 
//SYSIN    DD DSN=&DSFSYSIN,DISP=(OLD,DELETE) 
//SYSPRINT DD SYSOUT=*

Table 1 contains the DDNAMES AMDSAOSG uses, and the defaults for the DDNAMES. Additional related notes follow this table.

Table 1. DDNAMES and defaults used by AMDSAOSG
ddname Default value Use
DPLTEXT DSN=SYS1.NUCLEUS(AMDSADPL),DISP=SHR Input for AMDSABLD.
DVITEXT DSN=SYS1.NUCLEUS(AMDSADVI),DISP=SHR Input for AMDSABLD.
GENPARMS Must be preallocated. Input for AMDSAOSG, passed to assembler.
GENPRINT SYSOUT=A Output listing from AMDSAOSG.
IPITEXT DSN=SYS1.NUCLEUS(AMDSAIPI),DISP=SHR Input for AMDSABLD.
IPLDEV DSN=SYS1.PAGEDUMP.Vvolser,UNIT=iplunit, VOL=(PRIVATE,SER=iplser), Stand-alone dump program, output from AMDSABLD. ICKDSF uses VOL keywords to describe the residence volume.
DISP=OLD,DCB=(BLKSIZE=12288,RECFM=U, DSORG=PS), LABEL=(,NL) Tape IPL volume.
DISP=(NEW,KEEP),DCB=(LRECL=4096, BLKSIZE=4096,RECFM=F,DSORG=PS),SPACE=(4096, (1095),,CONTIG), LABEL=EXPDT=99366 DASD IPL volume.
IPLTEXT DSN=SYS1.NUCLEUS(AMDSAIPD),DISP=SHR for DASD Input for AMDSABLD.
DSN=SYS1.NUCLEUS(AMDSAIPT),DISP=SHR for tape  
PGETEXT DSN=SYS1.NUCLEUS(AMDSAPGE),DISP=SHR Input for AMDSABLD.
SYSPRINT Must not be pre-allocated Temporary listings from called programs.
SYSPUNCH DSN=&OBJ,UNIT=SYSDA,SPACE=(80,(250,50)) Object module passed from assembler to AMDSABLD.
SYSTERM None Assembly messages.
SYSUT1 UNIT=SYSDA,SPACE=(1700,(400,50)) Work file for assembler.
TRK0TEXT Must be preallocated. Cylinder 0, Track 0

IPL text from AMDSABLD to ICKDSF (DASD only).
DSFSYSIN DSN=&DSFSYSIN, DISP=(,PASS), SPACE=(80,(4,1)), UNIT=SYSDA SYSIN input for ICKDSF
Note:
  1. You must specify the GENPARMS DDNAME on the job step.
  2. You cannot specify the SYSPRINT and SYSIN DD statements in the job step.
  3. In GENPARMS, you specify values for UNIT= and VOLSER= on the AMDSADMP macro statement.
  4. You must specify SYSLIB TRK0TEXT and DFSSYSIN statements.

The JCL shown in Figure 2 generates a stand-alone dump from DASD 222 using a volume serial of SADMPM. The output is directed to the data set SYS1.SADMP on a DASD 450. Stand-alone dump determines at run-time if that device is usable. If the dump data set on device 450 is not usable, the operator will be prompted for another data set. The operator can press enter on any of the consoles at address 041, 042, 0A0, 3E0, or 3E1. The dump will include the default storage ranges in those address spaces that are physically-swapped in at the time of the dump. In addition, all storage in ASID 1 and the JES2 address spaces will be dumped. Stand-alone dump will also dump the data spaces created by the DUMPSRV address space.

Figure 2. Example: One-stage generation of stand-alone dump to a DASD
//OSG      EXEC PGM=AMDSAOSG,REGION=5M        
//SYSLIB   DD DSN=SYS1.MACLIB,DISP=SHR            
//         DD DSN=SYS1.MODGEN,DISP=SHR            
//TRK0TEXT DD DSN=&TRK0TEXT,DISP=(,PASS),     
//            SPACE=(4096,(2,1)),UNIT=SYSDA   
//DSFSYSIN DD DSN=&DSFSYSIN,DISP=(,PASS),     
//            SPACE=(80,(4,1)),UNIT=SYSDA     
//GENPARMS DD   *
  AMDSADMP CONSOLE=((041,3277),(042,3277),(0A0,3277),                 X
                   (3E0,3277),(3E1,3277)),                            X
           DUMP='SP(ALL) IN ASID(1,'JES2') ALSO DATASPACES            X
           OF ASID('DUMPSRV')',                                       X
           IPL=D222,                                                  X
           MINASID=PHYSIN,                                            X
           OUTPUT=D450,                                               X
           REUSEDS=NEVER,                                             X
           PROMPT,                                                    X
           VOLSER=SADMPM
  END
/*
//PUTIPL   EXEC PGM=ICKDSF,REGION=4M                        
//IPLDEV   DD DISP=OLD,UNIT=SYSDA,                          
//            VOL=(PRIVATE,RETAIN,SER=SADMPM)               
//TRK0TEXT DD DSN=&TRK0TEXT,DISP=(OLD,DELETE)               
//SYSIN    DD DSN=&DSFSYSIN,DISP=(OLD,DELETE)               
//SYSPRINT DD SYSOUT=*

The JCL shown in Figure 3generates a stand-alone dump from tape 333 using a volume serial of TSADMP. The output is directed to the Start of changeunlabeled volumeEnd of change on tape 550. Stand-alone dump determines at runtime if that device is usable. If the dump data set on device 550 is not usable, the operator is prompted for another data set. The operator can press enter on any of the consoles at address 051,052, 0A0, 3E0, or 3E1. The dump includes the default storage ranges in all address spaces at the time of the dump. In addition, the data spaces of master, XCF and OMVS address spaces are also included in the stand-alone dump.

Figure 3. Example: One-stage generation of stand-alone dump to tape
//SADMPGEN JOB MSGLEVEL=(1,1)                                         
//OSG      EXEC PGM=AMDSAOSG,REGION=5M                                
//SYSLIB   DD DSN=SYS1.MACLIB,DISP=SHR                                
//         DD DSN=SYS1.MODGEN,DISP=SHR                                
//GENPARMS DD *                                                       
  AMDSADMP IPL=T333,VOLSER=TSADMP,                                   X
           CONSOLE=((051,3277),(052,3277),                           X
              (0A0,3277),(3E0,3277),(3E1,3277)),                     X
           DUMP='SP(ALL) IN ASID(ALL)                                X
           ALSO DSP OF ASID(1,'XCFAS','OMVS')',                      X
           MINASID=ALL,                                              X
           Start of changeOUTPUT=(500),End of change                                             X
           REUSEDS=NEVER,                                            X
           PROMPT                                                    X
  END                                                                 
/*                                                  

The output from AMDSAOSG contains a listing for the stand-alone dump common communication table (CCT) and device and dump options (DDO) control blocks that contain information specified at generation time. The remainder of the output consists of messages, including message AMD064I, from both stand-alone dump and, when the residence volume is direct access, the device utility ICKDSF. Table 2 lists the codes AMDSAOSG returns in message AMD064I.

Table 2. AMDSAOSG return codes
Return Code Explanation
0 Residence volume initialized
4 Residence volume not initialized due to an error, or a warning was issued during AMDSADMP assembly
8 Residence volume not initialized; GENPRINT could not be opened

See z/OS MVS System Messages, Vol 1 (ABA-AOM) for more information about AMD064I.