Windows NT 4.0 source code leak
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.

154 lines
2.1 KiB

4 years ago
  1. /*++ BUILD Version: 0003 // Increment this if a change has global effects
  2. Copyright (c) 1991 Microsoft Corporation
  3. Module Name:
  4. halp.h
  5. Abstract:
  6. This header file defines the private Hardware Architecture Layer (HAL)
  7. interfaces.
  8. Author:
  9. David N. Cutler (davec) 25-Apr-1991
  10. Revision History:
  11. --*/
  12. #ifndef _HALP_
  13. #define _HALP_
  14. #include "nthal.h"
  15. #include "dtidef.h"
  16. #include "hal.h"
  17. #include "jxhalp.h"
  18. #include "xm86.h"
  19. #include "x86new.h"
  20. //
  21. // Define function prototypes.
  22. //
  23. ULONG
  24. HalpAllocateTbEntry (
  25. VOID
  26. );
  27. VOID
  28. HalpFreeTbEntry (
  29. VOID
  30. );
  31. BOOLEAN
  32. HalpCalibrateStall (
  33. VOID
  34. );
  35. VOID
  36. HalpClockInterrupt (
  37. VOID
  38. );
  39. BOOLEAN
  40. HalpCreateDmaStructures (
  41. VOID
  42. );
  43. BOOLEAN
  44. HalpDmaDispatch(
  45. IN PKINTERRUPT Interrupt,
  46. IN PVOID ServiceContext
  47. );
  48. BOOLEAN
  49. HalpInitializeDisplay (
  50. IN PLOADER_PARAMETER_BLOCK LoaderBlock
  51. );
  52. BOOLEAN
  53. HalpInitializeInterrupts (
  54. VOID
  55. );
  56. BOOLEAN
  57. HalpMapFixedTbEntries (
  58. VOID
  59. );
  60. BOOLEAN
  61. HalpMapIoSpace (
  62. VOID
  63. );
  64. VOID
  65. HalpProfileInterrupt (
  66. VOID
  67. );
  68. #if defined(R4000)
  69. ULONG
  70. HalpReadCountRegister (
  71. VOID
  72. );
  73. ULONG
  74. HalpWriteCompareRegisterAndClear (
  75. IN ULONG Value
  76. );
  77. #endif
  78. VOID
  79. HalpStallInterrupt (
  80. VOID
  81. );
  82. VOID HalpResetIsaBus (
  83. IN ULONG DelayCount
  84. );
  85. VOID HalpInitializeX86DisplayAdapter(
  86. VOID
  87. );
  88. VOID HalpResetX86DisplayAdapter(
  89. VOID
  90. );
  91. VOID HalpProgramIntervalTimer(
  92. IN ULONG IntervalCount
  93. );
  94. #define HALP_IS_PHYSICAL_ADDRESS(Va) \
  95. ((((ULONG)Va >= KSEG0_BASE) && ((ULONG)Va < KSEG1_BASE)) ? TRUE : FALSE)
  96. //
  97. // Define external references.
  98. //
  99. extern PHAL_RESET_DISPLAY_PARAMETERS HalpResetDisplayParameters;
  100. extern ULONG HalpCurrentTimeIncrement;
  101. extern ULONG HalpNextIntervalCount;
  102. extern ULONG HalpNextTimeIncrement;
  103. extern ULONG HalpNewTimeIncrement;
  104. extern ULONG HalpProfileCountRate;
  105. extern PADAPTER_OBJECT MasterAdapterObject;
  106. //
  107. // Map buffer prameters. These are initialized in HalInitSystem
  108. //
  109. extern PHYSICAL_ADDRESS HalpMapBufferPhysicalAddress;
  110. extern ULONG HalpMapBufferSize;
  111. extern ULONG HalpBusType;
  112. #endif // _HALP_