Mail Archives: djgpp-workers/2002/06/09/22:46:36
The following patch to crt0.S seems to have fixed the problem:
*** crt0.BAK Sun Jun 9 20:14:46 2002
--- crt0.S Sun Jun 9 20:21:48 2002
*************** brk_common:
*** 475,478 ****
--- 475,479 ----
movw $0x0900, %ax /* disable interrupts */
int $0x31
+ cli
pushl %eax
(Line numbers are vs 2.03, but it's just a single line insertion). This
should be a no op - since the previous line disables and stores the
previous state in AX; we then restore (enable) them with an equivalent call.
Under Win2K the get interrupt state DPMI call shows the program starts
with interrupts disabled (but they aren't) - the cli above seems to
fix win2K's bad behavior when moving the arena but does not break
win95 for example.
Any comments? We ought to try and build something substantial (like
emacs) with this fix above to crt0 and see if there is joy in W2K land
again.
I can't see how this above could break anything.
- Raw text -