Pristine Ack-5.5
[Ack-5.5.git] / mach / sun3 / libce / fif4.s
1 .sect .text; .sect .rom; .sect .data; .sect .bss
2 .sect .text
3 .define fif4
4 fif4:
5         move.l  (4,sp),d1
6         move.l  (8,sp),d0
7         jsr     (Fmuls)         ! result in d0
8         jsr     (Fstod)         ! convert to double
9         lea     (4,sp),a0       ! build stack for modf
10         move.l  a0,-(sp)
11         move.l  d1,-(sp)
12         move.l  d0,-(sp)
13         jsr     (_modf)
14         lea     (12,sp),sp
15         jsr     (Fdtos)         ! convert result to single
16         move.l  d0,-(sp)        ! save it
17         move.l  (8,sp),d0       ! also convert integer part to single
18         move.l  (12,sp),d1
19         jsr     (Fdtos)
20         move.l  d0,(8,sp)       ! integer part
21         move.l  (sp)+,d0
22         move.l  d0,(8,sp)       ! fraction part
23         rts