Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Produktion von Anwenderroutinen in Assembler

&pagelevel(3)&pagelevel

Es wird empfohlen, den Modul IEDTGLE nicht mit einzubinden. Andernfalls müsste man die Entries dieses Moduls mittels BINDER verstecken, da es sonst beim Laden mehrerer Anwenderroutinen "duplicate Entries" geben würde.
Beim Nachladen werden die offenen Externals des Moduls dann entweder gegen einen IEDTGLE abgesättigt, der schon mit dem Hauptprogramm oder einer anderen Anwenderroutine geladen ist, oder es wird der mit dem Subsystem EDTCON vorgeladene IEDTGLE verwendet.
Die folgende Prozedur assembliert Anwenderroutinen, die als ANWEND1.ASS,
ANWEND2.ASS, ... in der Bibliothek EDT.BEISPIELE abgelegt sind.
Das erzeugte Programm und die Compiler-Listen werden ebenfalls in dieser Bibliothek abgelegt.

/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 

Erläuterungen

(1)Es wird angenommen, dass die SYSLIB.EDT.170 unter der Default-Userid installiert ist. Der Assembler benötigt diese Bibliothek, um die Makros der IEDTGLE-Schnittstelle zu finden.
Auf die Angabe der Standard-Makrolib kann i.d.R. verzichtet werden. Eventuell sind weitere Makrobibliotheken anzugeben.