winedos: Clear TF bit before passing control to a VM86 interrupt handler.
This commit is contained in:
parent
fa68994ab1
commit
404eadc775
|
@ -98,6 +98,7 @@ extern struct DPMI_segments *DOSVM_dpmi_segments;
|
|||
* IF_MASK is only pushed into real mode stack.
|
||||
*/
|
||||
#define V86_FLAG 0x00020000
|
||||
#define TF_MASK 0x00000100
|
||||
#define IF_MASK 0x00000200
|
||||
#define VIF_MASK 0x00080000
|
||||
#define VIP_MASK 0x00100000
|
||||
|
|
|
@ -514,8 +514,8 @@ void DOSVM_HardwareInterruptRM( CONTEXT86 *context, BYTE intnum )
|
|||
context->SegCs = SELECTOROF( handler );
|
||||
context->Eip = OFFSETOF( handler );
|
||||
|
||||
/* Clear virtual interrupt flag. */
|
||||
context->EFlags &= ~VIF_MASK;
|
||||
/* Clear virtual interrupt flag and trap flag. */
|
||||
context->EFlags &= ~(VIF_MASK | TF_MASK);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue