Change the V86BASE macro to call DOSMEM_MemoryBase() instead of using
the ugly Dr7 hack.
This commit is contained in:
parent
eef1fb8f41
commit
9b2060afab
|
@ -378,7 +378,6 @@ static void save_context( CONTEXT *context, const SIGCONTEXT *sigcontext )
|
||||||
#else
|
#else
|
||||||
context->SegGs = __get_gs();
|
context->SegGs = __get_gs();
|
||||||
#endif
|
#endif
|
||||||
if (ISV86(context)) V86BASE(context) = (DWORD)DOSMEM_MemoryBase(0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -714,7 +714,7 @@ typedef HANDLE *PHANDLE;
|
||||||
#define RESET_ZFLAG(context) (EFL_reg(context) &= ~0x0040)
|
#define RESET_ZFLAG(context) (EFL_reg(context) &= ~0x0040)
|
||||||
|
|
||||||
#define ISV86(context) (EFL_reg(context) & 0x00020000)
|
#define ISV86(context) (EFL_reg(context) & 0x00020000)
|
||||||
#define V86BASE(context) ((context)->Dr7) /* ugly */
|
#define V86BASE(context) DOSMEM_MemoryBase(0)
|
||||||
|
|
||||||
|
|
||||||
/* Macros to retrieve the current context */
|
/* Macros to retrieve the current context */
|
||||||
|
|
|
@ -250,7 +250,6 @@ static int DOSVM_Process( LPDOSTASK lpDosTask, int fn, int sig,
|
||||||
if (ret) return 0;
|
if (ret) return 0;
|
||||||
ret=0;
|
ret=0;
|
||||||
}
|
}
|
||||||
(void*)V86BASE(&context)=lpDosTask->img;
|
|
||||||
#ifdef TRY_PICRETURN
|
#ifdef TRY_PICRETURN
|
||||||
if (VM86->vm86plus.force_return_for_pic) {
|
if (VM86->vm86plus.force_return_for_pic) {
|
||||||
SET_PEND(&context);
|
SET_PEND(&context);
|
||||||
|
|
|
@ -157,7 +157,6 @@ static void INT_GetRealModeContext( REALMODECALL *call, CONTEXT86 *context )
|
||||||
FS_reg(context) = call->fs;
|
FS_reg(context) = call->fs;
|
||||||
GS_reg(context) = call->gs;
|
GS_reg(context) = call->gs;
|
||||||
SS_reg(context) = call->ss;
|
SS_reg(context) = call->ss;
|
||||||
V86BASE(context) = (DWORD) DOSMEM_MemoryBase(0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue