Mail Archives: djgpp-workers/2001/12/11/15:44:24
> > The PSP returned by DOSX (DPMI) is still correct, so when we do the set
> > it cleans up the internal bogosity in NTVDM.
> >
> > It appears to work (at least most of the time ...). My patched gcc 2.8.1
> > driver which uses this code would crash each 1-3 compiles without it, but
> > only crashed once with it. I was going to see if that crash was
> > reproducible. The old code might be more reliable, but I don't see
> > how to have a child program know if it's run from a go32-v2.
>
> Well, I'm paranoiac nonetheless, primarily because this code wasn't
> tested except now, while the old code was tested by several users on
> several different systems.
Oh, I'm worried too. But just using the stubinfo doesn't work since
v2load puts a bogus value in. Not doing it at all under v2load can
cause crashes, so I think we need to do this at least in some cases.
> So I'd prefer a solution which just fixes the old code, so that when
> it runs under go32-v2, it doesn't call PM Int 21h at all.
We can't just call the old code without knowing when the PSP is bogus.
We also can't just do nothing if the PSP is bogus.
maybe something like:
if stubinfo.basename = v2load
setpsp = ah=51, int 21h
else
setpsp = subinfo.psp
This code also needs to go into CVS by the way (go32-v2 is still broke).
- Raw text -