Cataloged procedure for assembly and run (ASMACG)
This procedure consists of two job steps: assembly and run, using the loader. Program modules for program libraries are not produced.
Enter these statements in the input stream to use this procedure:
//jobname JOB
//stepname EXEC PROC=ASMACG
//C.SYSIN DD *
⋮
assembler source statements
⋮
/*
//G.ddname DD (parameters)
//G.ddname DD (parameters)
//G.ddname DD *
⋮
program input
⋮
/*
//G.ddname statements are included only if necessary.
Figure 1 shows the statements that make up the ASMACG procedure. Only those statements not previously discussed are explained in the figure.
Use the name ASMACG to call this procedure. Assembler and loader listings are produced. See Figure 1.
//ASMACG PROC
//*
//********************************************************************
//* Licensed Materials - Property of IBM *
//* *
//* 5696-234 5647-A01 *
//* *
//* (C) Copyright IBM Corp. 1992, 2008. All Rights Reserved. *
//* *
//* US Government Users Restricted Rights - Use, *
//* duplication or disclosure restricted by GSA ADP *
//* Schedule Contract with IBM Corp. *
//* *
//********************************************************************
//* *
//* ASMACG *
//* *
//* THIS PROCEDURE RUNS THE HIGH LEVEL ASSEMBLER AND WILL USE *
//* THE LOADER PROGRAM TO RUN THE NEWLY ASSEMBLED PROGRAM. *
//* *
//********************************************************************
//*
//C EXEC PGM=ASMA90
//SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR
//SYSUT1 DD DSN=&&SYSUT1,SPACE=(16384,(120,120),,,ROUND),
// UNIT=SYSALLDA,DCB=BUFNO=1
//SYSPRINT DD SYSOUT=*
//SYSLIN DD DSN=&&OBJ,SPACE=(3040,(40,40),,,ROUND),
// UNIT=SYSALLDA,DISP=(MOD,PASS),
// DCB=(BLKSIZE=3040,LRECL=80,RECFM=FB,BUFNO=1)
//G EXEC PGM=LOADER,PARM='MAP,LET,PRINT',COND=(8,LT,C) 1
//SYSLIN DD DSN=&&OBJ,DISP=(OLD,DELETE) 2
// DD DDNAME=SYSIN
//SYSLOUT DD SYSOUT=* 3
Notes to Figure 1:
- 1
- This statement runs the loader. The loader options in the PARM field cause the loader to produce a map and print the map and diagnostics. The NOCALL option is the same as NCAL for the binder, and the LET option is the same as for the binder.
- 2
- This statement defines the loader input data set as the same one produced as output by the assembler.
- 3
- This statement identifies the standard output class as the destination for the loader listing.