ack/mach/m68k4/libem/cii.s

25 lines
347 B
ArmAsm
Raw Normal View History

1985-02-07 22:06:32 +00:00
.define .cii
.text
.cii:
movem.l a0/d0/d1,.savreg
move.l (sp)+,a0 ! return address
move (sp)+,d0 ! destination size
sub (sp)+,d0 ! destination - source size
bgt 1f
sub d0,sp ! pop extra bytes
bra 3f
1:
move (sp),d1
ext.l d1
swap d1
asr #1,d0
2:
move.w d1,-(sp)
dbf d0,2b
3:
move.l a0,-(sp)
movem.l .savreg,a0/d0/d1
rts
.align 2