17-12 Vol. 3
8086 EMULATION
When a task switch is used to enter virtual-8086 mode, the TSS for the virtual-8086-
mode task must be a 32-bit TSS. (If the new TSS is a 16-bit TSS, the upper word of
the EFLAGS register is not in the TSS, causing the processor to clear the VM flag
when it loads the EFLAGS register.) The processor updates the VM flag prior to
loading the segment registers from their images in the new TSS. The new setting of
the VM flag determines whether the processor interprets the contents of the segment
registers as 8086-style segment selectors or protected-mode segment selectors.
When the VM flag is set, the segment registers are loaded from the TSS, using 8086-
style address translation to form base addresses.
See Section 17.3, “Interrupt and Exception Handling in Virtual-8086 Mode”, for infor-
mation on entering virtual-8086 mode on a return from an interrupt or exception
handler.