summaryrefslogtreecommitdiffstats
path: root/private/inc/ntddvdm.h
diff options
context:
space:
mode:
authorAdam <you@example.com>2020-05-17 05:51:50 +0200
committerAdam <you@example.com>2020-05-17 05:51:50 +0200
commite611b132f9b8abe35b362e5870b74bce94a1e58e (patch)
treea5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/inc/ntddvdm.h
downloadNT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip
Diffstat (limited to 'private/inc/ntddvdm.h')
-rw-r--r--private/inc/ntddvdm.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/private/inc/ntddvdm.h b/private/inc/ntddvdm.h
new file mode 100644
index 000000000..ef1885b39
--- /dev/null
+++ b/private/inc/ntddvdm.h
@@ -0,0 +1,44 @@
+/*++ BUILD Version: 0001 // Increment this if a change has global effects
+
+Copyright (c) 1990-1996 Microsoft Corporation
+
+Module Name:
+
+ ntddvdm.h
+
+Abstract:
+
+ This is the include file that defines all constants and types for
+ accessing the NTVDM kernel mode virtual devices.
+
+Author:
+
+ William Hsieh (williamh) 31-May-1996
+
+Revision History:
+
+--*/
+
+//
+// NtDeviceIoControlFile IoControlCode values for this device.
+//
+// Warning: Remember that the low two bits of the code specify how the
+// buffers are passed to the driver!
+//
+//
+#define IOCTL_VDM_BASE FILE_DEVICE_VDM
+
+//
+// 32 VDDs. Each VDD has possible 127 private ioctl code
+// These values are based on the fact that there are 12 bits reserved
+// for function id in each IOCTL code.
+//
+#define IOCTL_VDM_GROUP_MASK 0xF80
+#define IOCTL_VDM_GROUP_SIZE 127
+
+#define IOCTL_VDM_PARALLEL_GROUP 0
+
+#define IOCTL_VDM_PARALLEL_BASE IOCTL_VDM_BASE + IOCTL_VDM_PARALLEL_GROUP * IOCTL_VDM_GROUP_SIZE
+#define IOCTL_VDM_PAR_WRITE_DATA_PORT CTL_CODE(IOCTL_VDM_PARALLEL_BASE, 1, METHOD_BUFFERED, FILE_ANY_ACCESS)
+#define IOCTL_VDM_PAR_WRITE_CONTROL_PORT CTL_CODE(IOCTL_VDM_PARALLEL_BASE, 2, METHOD_BUFFERED, FILE_ANY_ACCESS)
+#define IOCTL_VDM_PAR_READ_STATUS_PORT CTL_CODE(IOCTL_VDM_PARALLEL_BASE, 3, METHOD_BUFFERED, FILE_ANY_ACCESS)