*TITLEIABSH -- HALF WORD ABSOLUTE VALUE FUNCTION 00000010 C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** *A AUTHOR H. LAVALLET 00000020 *A DESIGNER H. LAVALLET 00000030 *A LANGUAGE ASSEMBLER 00000040 *A SYSTEM S/370 00000050 *A WRITTEN 03-10-81 00000060 * REVISED MM/DD/YY BY PROGRAMMER FOR REASON 00000070 * 00000080 *A 00000090 *A 00000091 *A I = IABSH (J) 00000092 *A 00000093 *A IN/OUT ARGUMENT TYPE DESCRIPTION 00000094 *A 00000095 *A OUT I I4 RESULT OF FUNCTION CALL 00000096 *A IN J I2 HALF WORD TO BE FORCED POSITIVE 00000097 *A 00000100 *A 00000101 *A THIS FUNCTION RETURNS THE ABSOLUTE VALUE OF THE HALF WORD INPUT 00000102 *A ARGUMENT. 00000103 *A 00000104 * EJECT 00000600 IABSH CSECT 00000700 * 00000800 R0 EQU 0 00000900 R1 EQU 1 00001000 R2 EQU 2 00001100 R13 EQU 13 00001200 R14 EQU 14 00001300 R15 EQU 15 00001400 * 00001500 USING *,R15 00001600 * 00001700 ST R2,28(R13) SAVE R2 00001800 L R2,0(R1) ADDR OF J 00001900 LH R0,0(R2) J 00002000 * 00002100 LTR R0,R0 00002200 BNM POZ BRANCH IF NOT MINUS 00002300 LCR R0,R0 00002400 POZ L R2,28(R13) RESTORE R2 00002500 BR R14 RETURN 00002600 END IABSH 00002700