Virtual Devices (3.1) (vdag31qh.hlp) (Table of Contents; Topic list)
End_Nest_Exec
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
VMMcall End_Nest_Exec
 
The End_Nest_Exec service ends a nested execution block. This service is
used in conjunction with the Begin_Nest_Exec or Begin_Nest_V86_Exec service
to create a nested execution block in which virtual devices may call the
Exec_Int and Resume_Exec services.
 
This service has no parameters.
 
Return Value
 
The Client_CS and Client_IP registers contain the original values saved by
when the nested execution block was created.
 
Comments
 
A virtual device must end all nested execution blocks before returning to
the virtual machine manager.
 
This service restores the execution mode to the mode prior to the start of
the nested execution block. It also restores the Client_CS and Client_IP
registers, but does not restore any other client registers. A virtual device
should save and restore these registers using the Save_Client_State and
Restore_Client_State macros.
 
Uses
 
Client_CS, Client_IP, Flags
 
See Also
 
Begin_Nest_Exec, Begin_Nest_V86_Exec, Restore_Client_State,
Save_Client_State