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.

Return value

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.



Ntdd8042.h (include Ntdd8042.h)


See Remarks section.

See also




Send comments about this topic to Microsoft

© 2014 Microsoft