Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Producing user routines in Assembler

&pagelevel(3)&pagelevel

It is advisable not to link the IEDTGLE module. Otherwise it would be necessary to hide the entries in this module with the BINDER link editor as otherwise "duplicate entries" would occur when multiple user routines are loaded.
On dynamic loading, the module's open externals are then either resolved against an IEDTGLE which has already been loaded with the main program or another user routine or the IEDTGLE which is preloaded with the EDTCON subsystem is used.
The procedure below assembles user routines which are stored as ANWEND1.ASS, ANWEND2.ASS, ... in the library EDT.BEISPIELE.
The generated program and the compiler lists are also stored in this library.

/SET-PROCEDURE-OPTIONS INPUT-FORMAT=FREE-RECORD-LENGTH,/
    DATA-ESCAPE-CHAR=STD
/BEGIN-PARAMETER-DECLARATION
/   DECLARE-PARAMETER NAME=NR
/   DECLARE-PARAMETER NAME=LIB,INITIAL-VALUE=C'EDT.BEISPIELE
/END-PARAMETER-DECLARATION
/START-ASSEMBH
//COMPILE SOURCE=*LIBRARY-ELEMENT(//
    LIBRARY=&LIB,ELEMENT=ANWEND&NR..ASS),//
    MACRO-LIBRARY=($.SYSLIB.EDT.170,$.MACROLIB),-            -------- (1)
//    COMPILER-ACTION=*MODULE-GENERATION(MODULE-FORMAT=*LLM),//
    MODULE-LIBRARY=&LIB,//
    LISTING=*PARAMETERS(OUTPUT=*LIBRARY-ELEMENT(//
        LIBRARY=&LIB,ELEMENT=ANWEND&NR..LST))
//END
/EXIT-PROCEDURE

Explanations

(1)It is assumed that SYSLIB.EDT.170 is installed under the default user ID. The Assembler needs this library in order to locate the IEDTGLE interface macros.
It is not usually necessary to specify the default macro library. It may be necessary to specify further macro libraries.