Bug fixed: incorrect return value
New version adapted from m68k4 version.
This commit is contained in:
parent
3759de23eb
commit
928e341f16
|
@ -1,9 +1,10 @@
|
||||||
|
|
||||||
.define _signal
|
.define _signal
|
||||||
.extern _signal
|
.extern _signal
|
||||||
NSIG=32
|
NSIG=32
|
||||||
_signal:
|
_signal:
|
||||||
move.w 4(sp), d0
|
move.w 4(sp), d0
|
||||||
ext.l d0
|
ext.l d0
|
||||||
cmp.l #NSIG,d0
|
cmp.l #NSIG,d0
|
||||||
bcc 1f
|
bcc 1f
|
||||||
move.l 6(sp),d1
|
move.l 6(sp),d1
|
||||||
|
@ -16,7 +17,9 @@ _signal:
|
||||||
beq 2f
|
beq 2f
|
||||||
btst #0,d1
|
btst #0,d1
|
||||||
bne 2f
|
bne 2f
|
||||||
move.l #enter,d1
|
move.l #jmptab,d1
|
||||||
|
add.l d0,d1
|
||||||
|
add.l d0,d1
|
||||||
2:
|
2:
|
||||||
move.l d0,a0
|
move.l d0,a0
|
||||||
move.w #0x30,d0
|
move.w #0x30,d0
|
||||||
|
@ -26,16 +29,52 @@ _signal:
|
||||||
bne 4f
|
bne 4f
|
||||||
move.l a1,d0
|
move.l a1,d0
|
||||||
4:
|
4:
|
||||||
|
clr.l d1
|
||||||
rts
|
rts
|
||||||
1:
|
1:
|
||||||
move.l #22,d0
|
move.l #22,d0
|
||||||
3:
|
3:
|
||||||
jmp cerror
|
jmp cerror
|
||||||
|
|
||||||
|
jmptab: bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
|
bsr enter
|
||||||
enter:
|
enter:
|
||||||
movem.l d0/d1/a0/a1,-(sp)
|
movem.l d0/d1/a0/a1,-(sp)
|
||||||
move.l 16(sp),a0
|
move.l 16(sp),d0
|
||||||
move.l a0,-(sp)
|
sub.l #jmptab+2,d0
|
||||||
|
asr.l #1,d0
|
||||||
|
move.l d0,-(sp)
|
||||||
|
move.l d0,a0
|
||||||
add.l a0,a0
|
add.l a0,a0
|
||||||
add.l a0,a0
|
add.l a0,a0
|
||||||
add.l #dvect,a0
|
add.l #dvect,a0
|
||||||
|
|
Loading…
Reference in a new issue