fixed
This commit is contained in:
parent
cf8d769c73
commit
f4fb73386e
1 changed files with 23 additions and 8 deletions
|
@ -7,18 +7,33 @@
|
||||||
.sect .text
|
.sect .text
|
||||||
.cii:
|
.cii:
|
||||||
move.l (sp)+,a0 ! return address
|
move.l (sp)+,a0 ! return address
|
||||||
move (sp)+,d0 ! destination size
|
move.l (sp)+,d0 ! destination size
|
||||||
sub (sp)+,d0 ! destination - source size
|
move.l (sp)+,d1
|
||||||
|
move.l (sp),d2
|
||||||
|
cmp.l #1,d1
|
||||||
|
bne 1f
|
||||||
|
move.l #2,d1
|
||||||
|
ext.w d2
|
||||||
|
1:
|
||||||
|
cmp.l #2,d1
|
||||||
|
bne 1f
|
||||||
|
move.l #4,d1
|
||||||
|
ext.l d2
|
||||||
|
1:
|
||||||
|
move.l d2,(sp)
|
||||||
|
sub.l d1,d0
|
||||||
bgt 1f
|
bgt 1f
|
||||||
sub d0,sp ! pop extra bytes
|
sub.l d0,sp ! pop extra bytes
|
||||||
bra 3f
|
bra 3f
|
||||||
1:
|
1:
|
||||||
move (sp),d1
|
clr.l d1
|
||||||
ext.l d1
|
tst.l d2
|
||||||
swap d1
|
bge 1f
|
||||||
asr #1,d0
|
move.l #-1,d1
|
||||||
|
1:
|
||||||
|
asr #2,d0
|
||||||
2:
|
2:
|
||||||
move.w d1,-(sp)
|
move.l d1,-(sp)
|
||||||
dbf d0,2b
|
dbf d0,2b
|
||||||
3:
|
3:
|
||||||
move.l a0,-(sp)
|
move.l a0,-(sp)
|
||||||
|
|
Loading…
Reference in a new issue