Source code of Windows XP (NT5)
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.

113 lines
2.4 KiB

  1. ;/*++
  2. ;
  3. ;Copyright (c) 1991 Microsoft Corporation
  4. ;
  5. ;Module Name:
  6. ;
  7. ; segorder.inc
  8. ;
  9. ;Abstract:
  10. ;
  11. ; This module contains the segment order and segment macros
  12. ;
  13. ;Author:
  14. ;
  15. ; Richard Firth (rfirth) 05-Sep-1991
  16. ;
  17. ;Environment:
  18. ;
  19. ; Dos mode only
  20. ;
  21. ;Notes:
  22. ;
  23. ; When initially loaded, the NT VDM redir has the following order:
  24. ;
  25. ; +----------------------+
  26. ; | |
  27. ; | Resident Code |
  28. ; | |
  29. ; +----------------------+
  30. ; | |
  31. ; | Resident Data |
  32. ; | |
  33. ; +----------------------+ ----------------+
  34. ; | | |
  35. ; | Initialisation Code | <- entry point v
  36. ; | |
  37. ; +----------------------+
  38. ; | | all the stuff between these
  39. ; | Initialisation Data | arrows is discarded if we stay
  40. ; | | resident. Note that the redir
  41. ; +----------------------+ does not uninstall
  42. ; | |
  43. ; | Initialisation Stack | ^
  44. ; | | |
  45. ; +----------------------+ ----------------+
  46. ;
  47. ;Revision History:
  48. ;
  49. ; 05-Sep-1991 rfirth
  50. ; Created
  51. ;
  52. ;--*/
  53. ResidentStart segment public para 'code'
  54. ResidentStart ends
  55. ResidentCode segment public word 'code'
  56. ResidentCode ends
  57. ResidentData segment public word 'data'
  58. ResidentData ends
  59. ResidentEnd segment public para 'data'
  60. ResidentEnd ends
  61. ResidentGroup group ResidentStart, ResidentCode, ResidentData, ResidentEnd
  62. InitCode segment public para 'init'
  63. InitCode ends
  64. InitData segment public word 'init'
  65. InitData ends
  66. InitStack segment stack para 'stack'
  67. InitStack ends
  68. ;
  69. ; macros to avoid having to type in/possibly alter segment header guff
  70. ;
  71. ResidentCodeStart macro
  72. ResidentCode segment public word 'code'
  73. endm
  74. ResidentCodeEnd macro
  75. ResidentCode ends
  76. endm
  77. ResidentDataStart macro
  78. ResidentData segment public word 'data'
  79. endm
  80. ResidentDataEnd macro
  81. ResidentData ends
  82. endm
  83. InitCodeStart macro
  84. InitCode segment public para 'init'
  85. endm
  86. InitCodeEnd macro
  87. InitCode ends
  88. endm
  89. InitDataStart macro
  90. InitData segment public word 'init'
  91. endm
  92. InitDataEnd macro
  93. InitData ends
  94. endm