PI8042_MOUSE_ISR function pointer
A PI8042_MOUSE_ISR-typed callback routine customizes the operation of the I8042prt mouse ISR.
typedef BOOLEAN ( *PI8042_MOUSE_ISR)( _In_ PVOID IsrContext, _In_ PMOUSE_INPUT_DATA CurrentInput, _In_ POUTPUT_PACKET CurrentOutput, _In_ UCHAR StatusByte, _In_ PUCHAR Byte, _Inout_ PBOOLEAN ContinueProcessing, _In_ PMOUSE_STATE MouseState, _In_ PMOUSE_RESET_SUBSTATE ResetSubState );
- IsrContext [in]
Pointer to the filter device object of the driver that supplies this callback.
- CurrentInput [in]
Pointer to the input MOUSE_INPUT_DATA structure being constructed by the ISR.
- CurrentOutput [in]
Pointer to an OUTPUT_PACKET structure, which specifies an array of bytes being written to the hardware device.
- StatusByte [in]
Specifies a status byte that is read from I/O port 60 when the interrupt occurs.
- Byte [in]
Specifies a data byte that is read from I/O port 64 when the interrupt occurs.
- ContinueProcessing [in, out]
Specifies, if TRUE, that processing in the I8042prt mouse ISR will continue after this callback completes. Otherwise, processing does not continue.
- MouseState [in]
Pointer to a MOUSE_STATE enumeration value, which identifies the state of mouse input.
- ResetSubState [in]
Pointer to MOUSE_RESET_SUBSTATE enumeration value, which identifies the mouse reset substate. See the Remarks section.
A PI8042_MOUSE_ISR callback returns TRUE if the I8042prt mouse ISR should continue; otherwise it returns FALSE.
A PI8042_MOUSE_ISR callback is not needed if the default operation of the I8042prt mouse ISR is sufficient.
An upper-level keyboard filter driver can provide a mouse ISR callback. After the I8042prt mouse ISR validates the interrupt, it calls the mouse ISR callback.
To reset a mouse, I8042prt goes through a sequence of operational substates, each one of which is identified by a MOUSE_RESET_SUBSTATE enumeration value. For more information about how I8042prt resets a mouse and the corresponding mouse reset substates, see the documentation of MOUSE_RESET_SUBSTATE in ntdd8042.h.
A PI8042_MOUSE_ISR callback runs in kernel mode at the IRQL of the I8042prt mouse ISR.
|See Remarks section.|