// ntdd8042.h
PI8042_MOUSE_ISR Pi8042MouseIsr;
BOOLEAN Pi8042MouseIsr(
[in] PVOID IsrContext,
[in] PMOUSE_INPUT_DATA CurrentInput,
[in] POUTPUT_PACKET CurrentOutput,
[in] UCHAR StatusByte,
[in] PUCHAR Byte,
[in, out] PBOOLEAN ContinueProcessing,
[in] PMOUSE_STATE MouseState,
[in] PMOUSE_RESET_SUBSTATE ResetSubState
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
A PI8042_MOUSE_ISR-typed callback routine customizes the operation of the I8042prt mouse ISR.
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.