include vmm.inc
include power.inc
mov esi, Event
mov edi, OFFSET32 Return
mov eax, Power_Event
VMMCall System_Control
Notifies the virtual device that a power event has just occurred. The virtual device may modify all general registers and flags.
Value | Meaning |
---|---|
PWR_CRITICALRESUME | Resume critical operations after suspension. |
PWR_SUSPENDREQUEST | Suspend operation. |
PWR_SUSPENDRESUME | Resume operation after suspension. |
Value | Meaning |
---|---|
PWR_FAIL | Virtual device failed to process the event. |
PWR_OK | Virtual device processed the event successfully. |
All other values are reserved.
To fail the call, a virtual device should store the value PWR_FAIL in the doubleword pointed to by Return. For the call to succeed, the virtual device must leave the doubleword pointed to by Return unchanged. If a VxD stores PWR_OK through Return, it might overwrite a PWR_FAIL value that was written there by the previous device.
Only the virtual power device (VPOWERD) is permitted to send this message to devices. The EBX register must be zero on entry. The EDX register is reserved.
Note This message is sent for compatibility with Windows 3.1 virtual devices. New virtual devices should use the VPOWERD_Register_Power_Handler service to be notified of changes in power state.