Mail Archives: djgpp/2000/03/16/20:10:27
On Thu, 16 Mar 2000, Michael Tippach wrote:
> > > > > it takes 3 more lines of assembly code to detect NT.
> > > >
> > > > That's not really true, especially now that you need to distinguish
> > > > between NT and W2K.
> > >
> > > So does W2K return a different value than 0x3205 from function 0x3306?
> >
> > No, it reports the same value, but behaves differently.
>
> In how far does it behave differently? Could this different behaviour be
> used to detect either version or is there no way to, by means of code,
> inspect the differences without crashing the NTVDM on one system?
No, I don't know about any way of telling NT and W2K apart without
crashing the system. This test is required *because* different
work-arounds are needed in each case to avoid crashes and other
``surprises''.
One problem with NT that needs to be worked around is that NT ignores the
hight 16 bits of the user procedure address that is installed as a
real-mode callback (e.g., for handling mouse events). One problem with
W2K that needs to be worked around is that nested DPMI (well, DJGPP, to be
precise) programs crash NTVDM; the reason for the latter problem is still
unknown at this time.
- Raw text -