File: SVERZW.MA of Tape: Various/Decus/decus-2
(Source file text)
.TITLE L I N K - L I B R A R Y .SBTTL SVERZW:VERZWEIGUNGSROUTINE .INCLUDE SYS:MACLIB.MA /****SVERZW**** /04.09.81 PMO,15.8.83 VH /(L,AC)=?,ZU VERGLEICHENDER WERT /CALL SVERZW /FELD LISTEN /ADRESSE LISTE ARGUMENTE /ADRESSE LISTE SPRUENGE /L=? /AC=0 ,WENN GEFUNDEN /AC=ALTER INHALT ,WENN NICHT GEFUNDEN /************** /DAS UNTERPROGRAMM SVERZW WIRD VOM MACRO VERZWG VERWENDET /ROUTINE ZUM VERZWEIGEN ZWISCHEN ZWEI LISTEN /IM AC STEHT DIE ANFRAGE /1.PLATZ NACH AUFRUF: FELD DER LISTEN /2.PLATZ NACH AUFRUF: ANFANGSADRESSE DER ARGUMENTENLISTE /3.PLATZ NACH LISTE : ANFANGSADRESSE DER SPRUNGLISTE (AUFBAU S. MACRO VERZW) OPEN "SVERZW","F" .ENTRY SVERZW DEFMER LILN$ ,LILNG$ ,SPRLI$ ,ARGLI$ ,TEMP1$ SVERZW, OPNSUB RT:SVERR$,AC:TEMP1$,FLDSP$,ARGLI$,SPRLI$ TAD SPRLI$ /LISTENLAENGE ERMITTELN CIA DCAADD LILNG$,AC+ARGLI$ TAD LILNG$ CIA DCA LILN$ DEC SPRLI$ /SPRUNGADRESSE -1 JMP FLDSP$ SVER1$: ISZ LILNG$ JMP FLDSP$ TAD TEMP1$ JMP SVERR$ FLDSP$: V TAD I ARGLI$ INC ARGLI$ INC SPRLI$ CIA JMX AC+TEMP1$,NE:SVER1$ /ARGUMENT ERFUELLT ? TAD I SPRLI$ /JA ,RUECKKEHRADRESSE HOLEN DCA SVERZW /RUECKKEHRADRESSE SETZEN DCAADD SPRLI$,AC+LILN$,SPRLI$ /FELD HOLEN TAD I SPRLI$ DCA SVERR$ SVERR$: V /RUECKSPRUNG JMP I SVERZW CLOSE "SVERZW" ENDPR