Fix tasking shim making wrong exeception frame
This commit is contained in:
parent
1449f2bdb5
commit
e8b988f824
@ -110,6 +110,11 @@ tnp_as_copy:
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
tasking_um_switch_shim:
|
tasking_um_switch_shim:
|
||||||
|
move.l (a7)+, a0 ; Get the target PC into a0
|
||||||
|
; Push a dummy format/vector word
|
||||||
|
move.w #0, -(a7)
|
||||||
|
; Push the PC
|
||||||
|
move.l a0, -(a7)
|
||||||
move.w sr, d0 ; Push the SR with the supervisor bit cleared to make a "fake" exception frame
|
move.w sr, d0 ; Push the SR with the supervisor bit cleared to make a "fake" exception frame
|
||||||
andi.w #(~$2000), d0
|
andi.w #(~$2000), d0
|
||||||
move.w d0, -(a7)
|
move.w d0, -(a7)
|
||||||
|
Loading…
Reference in New Issue
Block a user