This procedure consists of two job steps: assembly and link. Use the name ASMACL to call this procedure. This procedure produces an assembler listing, the binder listing, and a program module.
The following example shows input to the assembler in the input job stream. SYSLIN contains the output from the assembly step and the input to the link step. It can be concatenated with additional input to the binder as shown in the example. This additional input can be binder control statements or other object modules.
An example of the statements entered in the input stream to use this procedure is:
//jobname JOB //stepname EXEC PROC=ASMACL //C.SYSIN DD *
·
·
·
assembler source statements
·
·
·
/* //L.SYSIN DD *
·
·
·
object module or binder control statements /*
//L.SYSIN is necessary only if the binder is to combine modules or read editor control information from the job stream.
Figure 44 shows the statements that make up the ASMACL procedure. Only those statements not previously discussed are explained in the figure.
//ASMACL 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. * //* * //******************************************************************** //* * //* ASMACL * //* * //* THIS PROCEDURE RUNS THE HIGH LEVEL ASSEMBLER, LINK-EDITS THE * //* NEWLY ASSEMBLED PROGRAM. * //* * //******************************************************************** //* //C EXEC PGM=ASMA90 //SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR //SYSUT1 DD DSN=&&SYSUT1,SPACE=(4096,(120,120),,,ROUND), 1 // 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) //L EXEC PGM=HEWL,PARM='MAP,LET,LIST,NCAL',COND=(8,LT,C) 2 //SYSLIN DD DSN=&&OBJ,DISP=(OLD,DELETE) 3 // DD DDNAME=SYSIN 4 //SYSLMOD DD DISP=(,PASS),UNIT=SYSALLDA,SPACE=(CYL,(1,1,1)), 5 // DSN=&&GOSET(GO) //SYSUT1 DD DSN=&&SYSUT1,SPACE=(1024,(120,120),,,ROUND), 6 // UNIT=SYSALLDA,DCB=BUFNO=1 //SYSPRINT DD SYSOUT=* 7
Notes to Figure 44:
[ Top of Page | Previous Page | Next Page | Contents | Index ]