Motorola DSP96002 User Manual
Page 622
MOTOROLA
DSP96002 USER’S MANUAL
B-103
fmpy.s d2,d4,d3 d2.s,d7.s y:(r1),d6.s ;Z1 1 1
fsub.s d6,d4 x:(r1)+,d6.s ;X1 1 1
fmpy.s d1,d4,d1 ; 1 1
fmpy d0,d4,d2 fsub.s d3,d1 ; 1 1
fmpy.s d6,d7,d3 ; 1 1
fmpy d4,d5,d3 fsub.s d3,d2 x:(r1),d4.s ;Y1 1 1
fmpy.s d4,d7,d2 d2.s,d0.s ; 1 1
fsub.s d2,d3 d1.s,d6.s ; 1 1
move d3.s,d5.s ; 1 1
rts ; 2 2
; Clip at z = 0 boundary
_clip1_zn
move y:(r1)-,d2.s ;W1 1 1
fmpy.s d2,d6,d2 y:(r1),d4.s ;Z1 1 1
fmpy.s d1,d4,d1 x:(r1)+,d7.s ;X1 1 1
fmpy d0,d4,d2 fsub.s d2,d1 ; 1 1
fmpy.s d6,d7,d0 x:(r1),d7.s ;Y1 1 1
fmpy d6,d7,d3 fsub.s d0,d2 ; 1 1
fmpy.s d4,d5,d5 d2.s,d0.s ; 1 1
fsub.s d3,d5 n0,d6.s ; 1 1
rts ; 2 2
;---------------------------------------------------------
;
; Double point clipping routines
;
;---------------------------------------------------------
; XOld = WOld boundary
_clip2_xop
move (r1)+n1 ; 1 1