Figure 1. Assembler
Program Demonstrating the Use of IKJEFTSR to Invoke a Program*****************************************************************
* THIS ASSEMBLER PROGRAM CALLS THE TSO SERVICE FACILITY TO *
* EXECUTE THE LINKAGE EDITOR PROGRAM (SYS1.LINKLIB(IEWL)). *
* THIS PROGRAM PASSES ONE PARAMETER TO THE LINKAGE EDITOR. *
* TO SUCCESSFULLY EXECUTE THE PROGRAM, THE USER SHOULD *
* ALLOCATE THE FOLLOWING FILES: SYSUT1, SYSLMOD, SYSLIN AND *
* SYSPRINT. *
*****************************************************************
TSFPROG CSECT
STM 14,12,12(13) ENTRY LINKAGE
BALR 12,0
USING *,12 USE R12 AS BASE REG
ST 13,SAVE+4 SAVE CALLERS SAVE AREA
LA 13,SAVE HAVE POINTER TO THIS SAVE AREA
L 15,=V(IKJEFTSR) GET ADDRESS OF IKJEFTSR
CALL (15),(FLAGS,PGM,PGMLEN,RETCODE,REASONC,ABENDCD,PARMLIST),VL
LTR 15,15 WAS RETURN CODE FROM IKJEFTSR = 0?
BZ NOERROR NO ERROR ---- PROCEED ON
*
*
* CHECK RETCODE, REASONC, AND ABENDCD AT THIS POINT
*
*
NOERROR EQU * CONTINUE ON WITH PROGRAM
*
*
*
L 13,SAVE+4 GET CALLERS SAVE AREA
LM 14,12,12(13) EXIT LINKAGE
BR 14 RETURN TO SUPERVISOR
* DECLARES
SAVE DS 18F
FLAGS DS 0F
DC XL2'0000' INITIALIZE TO ZERO
DC XL1'01' SPECIFY DUMP TO BE TAKEN
DC XL1'02' PROGRAM TO BE EXECUTED
PGM DC C'IEWL' NAME OF PROGRAM / LINKAGE EDITOR
PGMLEN DC F'4' LENGTH OF PROGRAM NAME
RETCODE DS F FUNCTION RETURN CODE
REASONC DS F TSF REASON CODE
ABENDCD DS F ABEND CODE
PGMPARM1 DS 0F FIRST AND ONLY PARAMETER TO IEWL
DC H'8' LENGTH OF PARM TO IEWL
DC C'MAP,XREF' THE ACTUAL PARM TO IEWL
PARMLIST CALL ,(PGMPARM1),VL,MF=L SET UP PARM LIST TO IEWL
END