380
Appendix A: System Routines — Direct Floating Point Operations
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
bcdneg
Declaration:
BCD16
bcdlong
(BCD16
a
)
Category(ies):
Direct Floating Point Operations
Description:
Negate a BCD16 floating-point number. This routine performs the same
function as the C negative operator “
-
” on a BCD16 value. This routine is
provided as a convenience for assembly language programs.
Inputs:
a
— A BCD16 floating pointer number.
Outputs:
Returns the negative of
a
.
Assumptions:
None
Side Effects:
None
Availability:
All versions of the TI
-
89 / TI
-
92 Plus.
TI
-
89 / TI
-
92 Plus
Differences:
None
See Also: bcdadd, bcdbcd, bcdcmp, bcddiv, bcdlong, bcdmul, bcdsub
Example:
bcdresult = -10
a = -20
nega = -30
.
.
.
move.l a(a6),-(sp) ;push a (a BCD16 floating-point number)
move.l a+4(a6),-(sp)
move.w a+8(a6),-(sp)
move.l bcdneg(a2),a0 ;assumes a2 -> jump table
jsr (a0) ;call bcdneg(a)
lea 10(sp),sp ;pop parameters
; BCD16 routine value is always at –10(a6)
move.l bcdresult(a6),nega(a6)
move.l bcdresult+4(a6),nega+4(a6)
move.w bcdresult+8(a6),nega+8(a6)