Motorola DSP96002 User Manual
Page 613
B-94
DSP96002 USER’S MANUAL
MOTOROLA
ori #$e0,ccr ; 1 1
fneg.s d1 d1.s,d5.s y:(r1)-,d2.s ; Wo 1 1
fneg.s d2 x:(r1)+n1,d6.s d2.s,d4.s ;Xo 1 1
fcmp d2,d6 x:(r1)-,d0.s ;Xn 1 1
fcmpg d1,d0 (r4)+n4 ;r4+2 1 1
fcmp d6,d4 ; 1 1
fcmpg d0,d5 x:(r1)+n1,d6.s ;Yo 1 1
fcmp d2,d6 x:(r1)+,d3.s ;Yn 1 1
fcmpg d1,d3 ; 1 1
fcmp d6,d4 ; 1 1
fcmpg d3,d5 y:(r1)+n1,d6.s ;Zo 1 1
fcmp d6,d4 y:(r1)+n1,d2.s ;Zn 1 1
fcmpg d2,d5 n0,d4.s ; 1 1
fcmp d4,d6 ; 1 1
fcmpg d4,d2 ; 1 1
jset #6,sr,_reject_clip ; 2 3
; Save new point
move d0.s,x:(r1)+ d2.s,y: ;Xo Zo 1 1
move d3.s,x:(r1)+ d5.s,y: ;Yo Wo 1 1
dec d7 x:(r0)+,d0.s ;X 1 1
jne _reject_loop ; 2 2
jmp _end ; 2 2
;---------------------------------------------------------
;
; Reject loop clipping routine
;
;---------------------------------------------------------
; Determine if new point is within view volume
_reject_clip
ori #$80,ccr ; 1 1
fcmp d1,d0 (r1)- ;r1- 1 1
fcmp d1,d3 d5.s,y:(r1)+ ; Wn 1 1
fcmp d4,d2 ; 1 1