Plug and Play BIOS Specification
Plug and Play BIOS Specification 1.0A Page 37
4.6.1 Function 3 - Get Event
Synopsis:
int FAR (*entryPoint)(Function, Message, BiosSelector);
int Function; /* PnP BIOS Function 3 */
unsigned int FAR *Message; /* Storage for the event message */
unsigned int BiosSelector; /* PnP BIOS readable/writable selector */
Description:
Required for Dynamic Event Management. This function will allow system software to retrieve a message
specifying the type of event that has occurred on the system. This function is supported for either event
notification by polling or for asynchronous event notification, if the system BIOS provides event
notification. It is the responsibility of this function to clear the event flag when called if the event
notification method implemented is through polling.
If a system event has occurred this call will return the appropriate event notification message in the
memory location specified by the Message argument. Message will be set to one of the following event
notification messages:
ABOUT_TO_CHANGE_CONFIG
DOCK_CHANGED
SYSTEM_DEVICE_CHANGED
CONFIG_CHANGE_FAILED
UNKNOWN_SYSTEM_EVENT
OEM_DEFINED_EVENT
The event notification messages are defined in the table at the start of Event Notification Interface section.
If Message is CONFIG_CHANGE_FAILED and the system is able to determine the cause of the error,
then the appropriate error should be returned in AX. This will allow system software the ability notify the
user of the cause of the failure. Refer to Appendix C for a description of the error codes associated with
the CONFIG_CHANGE_FAILED event message.
The BiosSelector parameter enables the system BIOS, if necessary, to update system variables that are
contained in the system BIOS memory space. If this function is called from protected mode the caller
must create a data segment descriptor using the 16-bit Protected Mode data segment base address
specified in the Plug and Play Installation Check data structure, a limit of 64k, and the descriptor must be
read/write capable. If this function is called from real mode, BiosSelector should be set to the Real Mode
16-bit data segment address as specified in the Plug and Play Installation Check structure. Refer to
section 4.4 above for more information on the Plug and Play Installation Check Structure and the
elements that make up the structure.
This function is available in real mode and 16-bit protected mode.
Returns:
0 if successful - SUCCESS
!0 if an error (Bit 7 set) or a warning occurred or no pending events - error code (The function return
codes are described in Appendix C)
The FLAGS and registers will be preserved, except for AX which contains the return code.