Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

117 lines
2.9 KiB

  1. //
  2. // Copyright (R) 1999-2000 Microsoft Corporation. All rights reserved.
  3. //
  4. // File Name: SaDisplayIoctl.h
  5. //
  6. // Author: Mukesh Karki
  7. //
  8. // Contents:
  9. // Definitions of IOCTL codes and data structures for the low-
  10. // level local display driver. These IOCTL codes allow higher
  11. // levels of software to determine the type and size of the
  12. // local display hardware as well as the interface version
  13. // supported.
  14. //
  15. #ifndef __SADISPLAY_IOCTL__
  16. #define __SADISPLAY_IOCTL__
  17. //
  18. // Header files
  19. //
  20. // (None)
  21. //
  22. // IOCTL control codes
  23. //
  24. ///////////////////////////////////////////////
  25. // GET_VERSION of interface supported by this driver
  26. //
  27. #define IOCTL_SADISPLAY_GET_VERSION \
  28. CTL_CODE( FILE_DEVICE_UNKNOWN, 0x801, \
  29. METHOD_BUFFERED, FILE_ANY_ACCESS )
  30. //
  31. // Structures used by the IOCTL codes
  32. //
  33. #ifndef VERSION_INFO
  34. #define VERSION_INFO
  35. #define VERSION1 0x1
  36. #define VERSION2 0x2
  37. #define VERSION3 0x4
  38. #define VERSION4 0x8
  39. #define VERSION5 0x10
  40. #define VERSION6 0x20
  41. #define VERSION7 0x40
  42. #define VERSION8 0x80
  43. #define THIS_VERSION VERSION2
  44. #endif //#ifndef VERSION_INFO
  45. ///////////////////////////////////////////////
  46. // GET_TYPE
  47. //
  48. #define IOCTL_SADISPLAY_GET_TYPE \
  49. CTL_CODE( FILE_DEVICE_UNKNOWN, 0x802, \
  50. METHOD_BUFFERED, FILE_ANY_ACCESS )
  51. //
  52. // Structures used by the IOCTL code
  53. //
  54. typedef enum _SADISPLAY_TYPE_OUT_BUF {
  55. LED,
  56. CHARACTER_LCD, // future use
  57. BIT_MAPPED_LCD
  58. } SADISPLAY_TYPE_OUT_BUF;
  59. ///////////////////////////////////////////////
  60. // GET_LCD_SIZE
  61. //
  62. #define IOCTL_SADISPLAY_GET_LCD_SIZE \
  63. CTL_CODE( FILE_DEVICE_UNKNOWN, 0x803, \
  64. METHOD_BUFFERED, FILE_ANY_ACCESS )
  65. //
  66. // Structures used by the IOCTL code
  67. //
  68. typedef struct _SADISPLAY_LCD_SIZE_OUT_BUFF {
  69. ULONG Height; // pixels
  70. ULONG Width; // pixels
  71. } SADISPLAY_LCD_SIZE_OUT_BUFF, *PSADISPLAY_LCD_SIZE_OUT_BUFF;
  72. ///////////////////////////////////////////////
  73. // GET_CHAR_SIZE
  74. // (Future use.)
  75. #define IOCTL_SADISPLAY_GET_CHAR_SIZE \
  76. CTL_CODE( FILE_DEVICE_UNKNOWN, 0x804, \
  77. METHOD_BUFFERED, FILE_ANY_ACCESS )
  78. //
  79. // Structures used by the IOCTL code
  80. //
  81. typedef struct _SADISPLAY_CHAR_SIZE_OUT_BUFF {
  82. ULONG lines;
  83. ULONG chars_per_line;
  84. } SADISPLAY_CHAR_SIZE_OUT_BUFF, *PSADISPLAY_CHAR_SIZE_OUT_BUFF;
  85. ///////////////////////////////////////////////
  86. // GET_CHAR_TYPE
  87. // (Future use.)
  88. #define IOCTL_SADISPLAY_GET_CHAR_TYPE \
  89. CTL_CODE( FILE_DEVICE_UNKNOWN, 0x805, \
  90. METHOD_BUFFERED, FILE_ANY_ACCESS )
  91. //
  92. // Structures used by the IOCTL code
  93. //
  94. typedef enum _SADISPLAY_CHAR_OUT_BUF {
  95. CHAR_ASCII,
  96. CHAR_UNICODE
  97. } SADISPLAY_CHAR_OUT_BUF;
  98. #endif // __SADISPLAY_IOCTL__