PI8042_KEYBOARD_ISR callback function (ntdd8042.h)

A PI8042_KEYBOARD_ISR-typed callback routine customizes the operation of the I8042prt keyboard ISR.

Syntax

PI8042_KEYBOARD_ISR Pi8042KeyboardIsr;

BOOLEAN Pi8042KeyboardIsr(
  PVOID IsrContext,
  PKEYBOARD_INPUT_DATA CurrentInput,
  POUTPUT_PACKET CurrentOutput,
  UCHAR StatusByte,
  PUCHAR Byte,
  PBOOLEAN ContinueProcessing,
  PKEYBOARD_SCAN_STATE ScanState
)
{...}

Parameters

IsrContext

[in] Pointer to the filter device object of the driver that supplies a callback.

CurrentInput

[in] Pointer to the input KEYBOARD_INPUT_DATA structure that is being constructed by the ISR.

CurrentOutput

[in] Pointer to an OUTPUT_PACKET structure, which specifies an array of bytes that is being written to the hardware device.

StatusByte

[in] Specifies the status byte that is read from I/O port 60 when an interrupt occurs.

Byte

[in] Specifies the data byte that is read from I/O port 64 when an interrupt occurs.

ContinueProcessing

[out] Specifies, if TRUE, that processing in the I8042prt keyboard ISR will continue after this callback completes. Otherwise, processing does not continue.

ScanState

[in] Pointer to a KEYBOARD_SCAN_STATE enumeration value, which identifies the keyboard scan state.

Return value

A PI8042_KEYBOARD_ISR callback returns TRUE if the I8042prt keyboard ISR should continue; otherwise it returns FALSE.

Remarks

A PI8042_KEYBOARD_ISR callback is not needed if the default operation of the I8042prt keyboard ISR is sufficient.

An optional, vendor-supplied, upper-level keyboard filter driver can provide a PI8042_KEYBOARD_ISR callback. The I8042prt ISR calls the callback after it validates the interrupt and reads the scan code.

The PI8042_KEYBOARD_ISR callback runs in kernel mode at the IRQL of the I8042prt keyboard ISR.

Requirements

   
Target Platform Desktop
Header ntdd8042.h (include Ntdd8042.h)
IRQL See Remarks section.

See also

KEYBOARD_INPUT_DATA

KEYBOARD_SCAN_STATE

KbFilter_IsrHook

OUTPUT_PACKET

PI8042_KEYBOARD_ISR