a) If the MPv bit is
not set, the host may not need to save the coprocessor state for this virtual
machine to improve system performance.
b) If the virtual EM
(EMv) bit is set, the host delivers all coprocessor exceptions to the client,
so that the client can provide its own floating point emulation (whether
or not a coprocessor is present or the host also has a floating point emulator).
In other words, if the EMv bit is set, the host sets the EM bit in the
real CR0 while the client is active, and reflects coprocessor not present
faults (Int 7) to the client.
c) Floating point emulation
can be tested on a system with a numeric coprocessor by using this function
to enable client handling of coprocessor exceptions and disable the coprocessor.
d) The client should
use DPMI function 0203h to register an exception handler for Coprocessor
not Present faults (INT 07h) prior to setting the EMv bit with this function.
e) A client can determine
the CPU type with DPMI function 0400h and the presence or absence of a
coprocessor with DPMI function 0E00h. The client should not draw any conclusions
about the presence or absence of a coprocessor based on the CPU type alone.
f) DOS/32 Advanced DPMI
does not have a built-in FPU emulator. That is, when client enables FPU
emulation (using Set Coprocessor Emulation DPMI function 0E01h), but does
not handle the exception 07h (Coprocessor not available), the first instruction
executed by the CPU that uses FPU will cause exception 07h which will be
trapped by DOS/32 Advanced which in its turn will terminate the client
and return to DOS with an error message.