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.

143 lines
2.5 KiB

  1. //**************************************************************************
  2. //
  3. // PORTIO.H -- Xena Gaming Project
  4. //
  5. // Version 3.XX
  6. //
  7. // Copyright (c) 1997 Microsoft Corporation. All rights reserved.
  8. //
  9. // @doc
  10. // @header PORTIO.H | Global includes and definitions for port I/O functions
  11. //**************************************************************************
  12. #ifndef __PORTIO_H__
  13. #define __PORTIO_H__
  14. //---------------------------------------------------------------------------
  15. // Procedures
  16. //---------------------------------------------------------------------------
  17. NTSTATUS
  18. PORTIO_DriverEntry (VOID);
  19. VOID
  20. PORTIO_MaskInterrupts (VOID);
  21. VOID
  22. PORTIO_UnMaskInterrupts (VOID);
  23. BOOLEAN
  24. PORTIO_AcquirePort (
  25. IN PGAMEPORT PortInfo
  26. );
  27. VOID
  28. PORTIO_ReleasePort (
  29. IN PGAMEPORT PortInfo
  30. );
  31. VOID
  32. PORTIO_CalibrateTimeOut (
  33. IN PGAMEPORT PortInfo
  34. );
  35. UCHAR
  36. PORTIO_Read (
  37. IN PGAMEPORT PortInfo
  38. );
  39. VOID
  40. PORTIO_Write (
  41. IN PGAMEPORT PortInfo,
  42. IN UCHAR Value
  43. );
  44. BOOLEAN
  45. PORTIO_GetAckNak (
  46. IN PGAMEPORT PortInfo,
  47. IN ULONG Timeout,
  48. OUT PUCHAR AckNak
  49. );
  50. BOOLEAN
  51. PORTIO_GetNakAck (
  52. IN PGAMEPORT PortInfo,
  53. IN ULONG Timeout,
  54. OUT PUCHAR NakAck
  55. );
  56. BOOLEAN
  57. PORTIO_IsClockActive (
  58. IN PGAMEPORT PortInfo,
  59. IN ULONG DutyCycle
  60. );
  61. BOOLEAN
  62. PORTIO_WaitClockInActive (
  63. IN PGAMEPORT PortInfo,
  64. IN ULONG DutyCycle
  65. );
  66. BOOLEAN
  67. PORTIO_WaitClockLow (
  68. IN PGAMEPORT PortInfo
  69. );
  70. BOOLEAN
  71. PORTIO_WaitClockHigh (
  72. IN PGAMEPORT PortInfo
  73. );
  74. BOOLEAN
  75. PORTIO_WaitDataLow (
  76. IN PGAMEPORT PortInfo
  77. );
  78. BOOLEAN
  79. PORTIO_WaitXA_HighLow (
  80. IN PGAMEPORT PortInfo
  81. );
  82. BOOLEAN
  83. PORTIO_WaitForIdle (
  84. IN PGAMEPORT PortInfo
  85. );
  86. BOOLEAN
  87. PORTIO_WaitForStatusGate (
  88. IN PGAMEPORT PortInfo,
  89. IN UCHAR Mask,
  90. IN ULONG Timeout
  91. );
  92. BOOLEAN
  93. PORTIO_WaitForHandshake (
  94. IN PGAMEPORT PortInfo,
  95. IN ULONG DutyCycle
  96. );
  97. BOOLEAN
  98. PORTIO_WaitForIdleHandshake (
  99. IN PGAMEPORT PortInfo,
  100. IN ULONG DutyCycle
  101. );
  102. BOOLEAN
  103. PORTIO_PulseAndWaitForHandshake (
  104. IN PGAMEPORT PortInfo,
  105. IN ULONG DutyCycle,
  106. IN ULONG Pulses
  107. );
  108. BOOLEAN
  109. PORTIO_PulseAndWaitForIdleHandshake (
  110. IN PGAMEPORT PortInfo,
  111. IN ULONG DutyCycle,
  112. IN ULONG Pulses
  113. );
  114. //===========================================================================
  115. // End
  116. //===========================================================================
  117. #endif __PORTIO_H__