1 2; =============================================================== 3; Nov 2013 4; =============================================================== 5; 6; int abs(int j) 7; 8; Return absolute value of j. 9; 10; =============================================================== 11 12SECTION code_clib 13SECTION code_stdlib 14 15PUBLIC asm_abs 16 17EXTERN l_neg_hl 18 19asm_abs: 20 21 ; enter : hl = int j 22 ; 23 ; exit : hl = abs(j) 24 ; 25 ; uses : af, hl, carry unaffected (not 808x) 26IF __CPU_INTEL__ 27 ld a,h 28 rla 29 ret nc 30ELSE 31 bit 7,h 32 ret z 33ENDIF 34 35 jp l_neg_hl 36