Re: Using Linux+dosemu to install Windows

Stas Sergeev
2002-07-28T07:09:10Z

[-- Attachment #1: Type: text/plain, Size: 793 bytes --]

Hello.

Bart Oldeman wrote:
>> functionality. Then you can safely
>> remove the "BUG" stuff I think.
> Yes, that looks like the proper fix to me.
We probably have to contact
Alberto to find out if his tests
are passed with that patches
because my testcase for the
"BUG" includes only FoxPro...

>> > Would you accept such a patch?
> That would be me. Well together with Stas' patch I would accept it.
But that was:
> But I do have time to
> create a patch to allow people to enable the BUG: code from
> dosemu.conf.
and this patch we don't need anymore.
The attached patch removes the "BUG"
stuff leaving it only for the dosemu
flags. It is always a good idea to
have dosemu flags protected I think.
How they got infected is still unclear
however this doesn't seem to happen
with my patches.

[-- Attachment #2: remove_bug.diff --]
[-- Type: text/plain, Size: 1184 bytes --]

--- src/arch/linux/async/sigsegv.c Sun Jul 28 10:51:57 2002
+++ src/arch/linux/async/sigsegv.c Sun Jul 28 10:52:23 2002
@@ -99,8 +99,10 @@
pushl %%eax\n \
popfl" \
: : "i"(~(AC|ID)) : "%eax");
+#if 0
_eflags &= ~(AC|ID);
REG(eflags) &= ~(AC|ID);
+#endif

if (in_vm86) {
in_vm86 = 0;
--- src/dosext/dpmi/dpmi.c Sun Jul 28 10:51:02 2002
+++ src/dosext/dpmi/dpmi.c Sun Jul 28 10:51:30 2002
@@ -2172,12 +2172,14 @@
retval=DO_VM86(&vm86s);
in_vm86=0;

+#if 0
/* This will let foxpro run with cpu>=486 */
if (_EFLAGS & (AC|ID)) {
_EFLAGS &= ~(AC|ID);
if (debug_level('M')>3)
D_printf("BUG: AC,ID set; flags changed to %08x\n",_EFLAGS);
}
+#endif

if (
#ifdef TRACE_DPMI
--- src/emu-i386/do_vm86.c Sun Jul 28 10:49:48 2002
+++ src/emu-i386/do_vm86.c Sun Jul 28 10:50:23 2002
@@ -474,12 +474,15 @@
}
#endif /* USE_NEW_INT */

+#if 0
/* This will protect us from Mr.Norton's bugs */
if (_EFLAGS & (AC|ID)) {
_EFLAGS &= ~(AC|ID);
if (debug_level('g')>3)
dbug_printf("BUG: AC,ID set; flags changed to %08x\n",_EFLAGS);
}
+#endif
+
if (
#ifdef X86_EMULATOR
(debug_level('e')>1)||