Routines 
Prev: 346E  Up: Map 
The address of this routine is found in the table of addresses. It is called indirectly via fp_calc_2.
This subroutine handles the function SGN X and therefore returns a 'last value' of 1 if X is positive, zero if X is zero and 1 if X is negative.


sgn  3492  CALL TEST_ZERO  If X is zero, just return with zero as the 'last value'.  
3495  RET C  
3496  PUSH DE  Save the pointer to STKEND.  
3497  LD DE,$0001  Store 1 in DE.  
349A  INC HL  Point to the second byte of X.  
349B  RL (HL)  Rotate bit 7 into the carry flag.  
349D  DEC HL  Point to the destination again.  
349E  SBC A,A  Set C to zero for positive X and to +FF for negative X.  
349F  LD C,A  
34A0  CALL INT_STORE  Stack 1 or 1 as required.  
34A3  POP DE  Restore the pointer to STKEND.  
34A4  RET  Finished. 
Prev: 346E  Up: Map 