Hi,
One way would be to call a function supported by a real mode
DOS environment that is not supported by the NTVDM. On my
systems this include BIOS interrupt 15H function 86H, "Wait".
With Windows it does not wait. With DOS it does wait. It will
wait in an OS2 VDM, but that's not a concern for most people.
I think function 83H "Event Wait" has similar problems, but I don't
remember the specifics. Untried, but function 89H "Switch to
Protected Mode" sounds like Windows would hate it as well.
The HLT instruction behaves differently under a Windows NTVDM
and real-mode DOS as well. Basically in real mode it waits for
(usually) the timer interrupt and causes a delay. With Windows it
does not delay. There was a discussion in the Soap Box when I
wrote a register visualization program that needed to lower CPU
usage on that effect.
I might have some other notes on Windows problems with my
DOS programs, but those two are the ones that gave me the most
frustration. I can check for others if you want.
HTH,
Steve N.