annotate fuhtark_test/include/ddk/ntdd8042.h @ 1500:91c8c3b7cbf0

add: futhark tests for generating vulkan api
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 21:36:48 +0700
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1500
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
1 /*
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
2 * ntdd8042.h
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
3 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
4 * i8042 IOCTL interface.
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
5 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
6 * This file is part of the w32api package.
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
7 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
8 * Contributors:
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
10 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
11 * THIS SOFTWARE IS NOT COPYRIGHTED
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
12 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
13 * This source code is offered for use in the public domain. You may
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
14 * use, modify or distribute it freely.
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
15 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
16 * This code is distributed in the hope that it will be useful but
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
18 * DISCLAIMED. This includes but is not limited to warranties of
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
20 *
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
21 */
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
22
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
23 #ifndef __NTDD8042_H
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
24 #define __NTDD8042_H
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
25
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
26 #include "ntddkbd.h"
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
27 #include "ntddmou.h"
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
28
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
29 #ifdef __cplusplus
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
30 extern "C" {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
31 #endif
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
32
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
33 #define IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
34 CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0FF2, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
35
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
36 #define IOCTL_INTERNAL_I8042_HOOK_KEYBOARD \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
37 CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0FF0, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
38
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
39 #define IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
40 CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0FF3, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
41
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
42 #define IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
43 CTL_CODE(FILE_DEVICE_KEYBOARD, 0x0FF1, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
44
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
45 #define IOCTL_INTERNAL_I8042_HOOK_MOUSE \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
46 CTL_CODE(FILE_DEVICE_MOUSE, 0x0FF0, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
47
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
48 #define IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
49 CTL_CODE(FILE_DEVICE_MOUSE, 0x0FF3, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
50
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
51 #define IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
52 CTL_CODE(FILE_DEVICE_MOUSE, 0x0FF1, METHOD_NEITHER, FILE_ANY_ACCESS)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
53
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
54 #define I8042_POWER_SYS_BUTTON 0x0001
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
55 #define I8042_SLEEP_SYS_BUTTON 0x0002
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
56 #define I8042_WAKE_SYS_BUTTON 0x0004
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
57 #define I8042_SYS_BUTTONS (I8042_POWER_SYS_BUTTON | \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
58 I8042_SLEEP_SYS_BUTTON | \
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
59 I8042_WAKE_SYS_BUTTON)
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
60
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
61 typedef enum _TRANSMIT_STATE {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
62 Idle = 0,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
63 SendingBytes
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
64 } TRANSMIT_STATE;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
65
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
66 typedef struct _OUTPUT_PACKET {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
67 PUCHAR Bytes;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
68 ULONG CurrentByte;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
69 ULONG ByteCount;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
70 TRANSMIT_STATE State;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
71 } OUTPUT_PACKET, *POUTPUT_PACKET;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
72
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
73 typedef enum _KEYBOARD_SCAN_STATE {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
74 Normal,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
75 GotE0,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
76 GotE1
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
77 } KEYBOARD_SCAN_STATE, *PKEYBOARD_SCAN_STATE;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
78
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
79 typedef enum _MOUSE_STATE {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
80 MouseIdle,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
81 XMovement,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
82 YMovement,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
83 ZMovement,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
84 MouseExpectingACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
85 MouseResetting
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
86 } MOUSE_STATE, *PMOUSE_STATE;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
87
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
88 typedef enum _MOUSE_RESET_SUBSTATE {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
89 ExpectingReset,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
90 ExpectingResetId,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
91 ExpectingGetDeviceIdACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
92 ExpectingGetDeviceIdValue,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
93 ExpectingSetResolutionDefaultACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
94 ExpectingSetResolutionDefaultValueACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
95 ExpectingSetResolutionACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
96 ExpectingSetResolutionValueACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
97 ExpectingSetScaling1to1ACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
98 ExpectingSetScaling1to1ACK2,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
99 ExpectingSetScaling1to1ACK3,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
100 ExpectingReadMouseStatusACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
101 ExpectingReadMouseStatusByte1,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
102 ExpectingReadMouseStatusByte2,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
103 ExpectingReadMouseStatusByte3,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
104 StartPnPIdDetection,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
105 ExpectingLoopSetSamplingRateACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
106 ExpectingLoopSetSamplingRateValueACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
107 ExpectingPnpIdByte1,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
108 ExpectingPnpIdByte2,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
109 ExpectingPnpIdByte3,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
110 ExpectingPnpIdByte4,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
111 ExpectingPnpIdByte5,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
112 ExpectingPnpIdByte6,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
113 ExpectingPnpIdByte7,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
114 EnableWheel,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
115 Enable5Buttons,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
116 ExpectingGetDeviceId2ACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
117 ExpectingGetDeviceId2Value,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
118 ExpectingSetSamplingRateACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
119 ExpectingSetSamplingRateValueACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
120 ExpectingEnableACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
121 ExpectingFinalResolutionACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
122 ExpectingFinalResolutionValueACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
123 ExpectingGetDeviceIdDetectACK,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
124 ExpectingGetDeviceIdDetectValue,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
125 CustomHookStateMinimum = 100,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
126 CustomHookStateMaximum = 999,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
127 I8042ReservedMinimum = 1000
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
128 } MOUSE_RESET_SUBSTATE, *PMOUSE_RESET_SUBSTATE;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
129
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
130 typedef struct _INTERNAL_I8042_START_INFORMATION {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
131 ULONG Size;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
132 PKINTERRUPT InterruptObject;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
133 ULONG Reserved[8];
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
134 } INTERNAL_I8042_START_INFORMATION, *PINTERNAL_I8042_START_INFORMATION;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
135
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
136 typedef VOID
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
137 (DDKAPI *PI8042_ISR_WRITE_PORT)(
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
138 IN PVOID Context,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
139 IN UCHAR Value);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
140
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
141 typedef VOID
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
142 (DDKAPI *PI8042_QUEUE_PACKET)(
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
143 IN PVOID Context);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
144
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
145 typedef NTSTATUS
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
146 (DDKAPI *PI8042_SYNCH_READ_PORT) (
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
147 IN PVOID Context,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
148 OUT PUCHAR Value,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
149 IN BOOLEAN WaitForACK);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
150
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
151 typedef NTSTATUS
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
152 (DDKAPI *PI8042_SYNCH_WRITE_PORT)(
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
153 IN PVOID Context,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
154 IN UCHAR Value,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
155 IN BOOLEAN WaitForACK);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
156
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
157
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
158 typedef NTSTATUS
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
159 (DDKAPI *PI8042_KEYBOARD_INITIALIZATION_ROUTINE)(
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
160 IN PVOID InitializationContext,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
161 IN PVOID SynchFuncContext,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
162 IN PI8042_SYNCH_READ_PORT ReadPort,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
163 IN PI8042_SYNCH_WRITE_PORT WritePort,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
164 OUT PBOOLEAN TurnTranslationOn);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
165
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
166 typedef BOOLEAN
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
167 (DDKAPI *PI8042_KEYBOARD_ISR)(
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
168 PVOID IsrContext,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
169 PKEYBOARD_INPUT_DATA CurrentInput,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
170 POUTPUT_PACKET CurrentOutput,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
171 UCHAR StatusByte,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
172 PUCHAR Byte,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
173 PBOOLEAN ContinueProcessing,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
174 PKEYBOARD_SCAN_STATE ScanState);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
175
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
176 typedef struct _INTERNAL_I8042_HOOK_KEYBOARD {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
177 OUT PVOID Context;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
178 OUT PI8042_KEYBOARD_INITIALIZATION_ROUTINE InitializationRoutine;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
179 OUT PI8042_KEYBOARD_ISR IsrRoutine;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
180 IN PI8042_ISR_WRITE_PORT IsrWritePort;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
181 IN PI8042_QUEUE_PACKET QueueKeyboardPacket;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
182 IN PVOID CallContext;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
183 } INTERNAL_I8042_HOOK_KEYBOARD, *PINTERNAL_I8042_HOOK_KEYBOARD;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
184
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
185 typedef BOOLEAN
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
186 (DDKAPI *PI8042_MOUSE_ISR)(
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
187 PVOID IsrContext,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
188 PMOUSE_INPUT_DATA CurrentInput,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
189 POUTPUT_PACKET CurrentOutput,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
190 UCHAR StatusByte,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
191 PUCHAR Byte,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
192 PBOOLEAN ContinueProcessing,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
193 PMOUSE_STATE MouseState,
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
194 PMOUSE_RESET_SUBSTATE ResetSubState);
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
195
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
196 typedef struct _INTERNAL_I8042_HOOK_MOUSE {
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
197 OUT PVOID Context;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
198 OUT PI8042_MOUSE_ISR IsrRoutine;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
199 IN PI8042_ISR_WRITE_PORT IsrWritePort;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
200 IN PI8042_QUEUE_PACKET QueueMousePacket;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
201 IN PVOID CallContext;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
202 } INTERNAL_I8042_HOOK_MOUSE, *PINTERNAL_I8042_HOOK_MOUSE;
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
203
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
204 #ifdef __cplusplus
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
205 }
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
206 #endif
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
207
91c8c3b7cbf0 add: futhark tests for generating vulkan api
sam <sam@basx.dev>
parents:
diff changeset
208 #endif /* __NTDD8042_H */