TITLE 'ADDADR - ADD ADDRESS WITH DISPLACEMENT' NAME 'ADDADR' ;FILE ADDADR.ASM ; * * * * PL/1 ADDRESS ADDITION * * * * ;PURPOSE THIS ROUTINE PROVIDES THE ABILITY TO ADD ; AN ADDRESS WITH A DISPLACEMENT USING ALL ; 16 BITS. ;PROGRAMMER ROBERT M. WHITE ;DATE CODED 01 DEC 1980 ;INPUT ; PARM1 = ADDRESS OR DISPLACEMENT ; PARM2 = ADDRESS OR DISPLACEMENT ;OUTPUT ; SUM IS RETURNED AS FUNCTION. ;REMARKS ;EQUATES ; * * * MISCELLANEOUS * * * BC EQU B ;MULTIPLE REGISTERS DE EQU D HL EQU H ; DO INITIALIZATION. ADDADR: CSEG PUBLIC ADDADR ; GET FIRST PARM. MOV E,M ;GET PTR IN DE. INX H MOV D,M INX H PUSH H XCHG MOV C,M ;PUT IT IN BC. INX H MOV B,M ; GET THE SECOND PARM. POP H ;RESTORE INPUT PTR. MOV E,M ;GET PTR IN DE. INX H MOV D,M INX H XCHG MOV E,M ;PUT IT IN DE. INX H MOV D,M ; ADD THE TWO AND RETURN. XCHG DAD B RET ;END ADDADR.ASM END