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.

114 lines
4.5 KiB

  1. ;/*
  2. ; * Microsoft Confidential
  3. ; * Copyright (C) Microsoft Corporation 1988 - 1991
  4. ; * All Rights Reserved.
  5. ; */
  6. PAGE ,132 ;AN000;
  7. TITLE DOS GRAPHICS Command - Copy Shared Data
  8. ;AN000;
  9. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  10. ;; DOS - GRAPHICS Command
  11. ;;
  12. ;; ;AN000;
  13. ;; File Name: GRCPSD.ASM ;AN000;
  14. ;; ---------- ;AN000;
  15. ;; ;AN000;
  16. ;; Description: ;AN000;
  17. ;; ------------ ;AN000;
  18. ;; This file contains the COPY_SHARED_DATA module. ;AN000;
  19. ;; ;AN000;
  20. ;; ;AN000;
  21. ;; Documentation Reference: ;AN000;
  22. ;; ------------------------ ;AN000;
  23. ;; PLACID Functional Specifications ;AN000;
  24. ;; OASIS High Level Design ;AN000;
  25. ;; OASIS GRAPHICS I1 Overview ;AN000;
  26. ;; ;AN000;
  27. ;; Procedures Contained in This File: ;AN000;
  28. ;; ---------------------------------- ;AN000;
  29. ;; COPY_SHARED_DATA - Copy the Shared Data Area from temporary ;AN000;
  30. ;; build area to resident memory & exit to DOS ;AN000;
  31. ;; ;AN000;
  32. ;; Include Files Required: ;AN000;
  33. ;; ----------------------- ;AN000;
  34. ;; None ;AN000;
  35. ;; ;AN000;
  36. ;; External Procedure References: ;AN000;
  37. ;; ------------------------------ ;AN000;
  38. ;; None ;AN000;
  39. ;; ;AN000;
  40. ;; Linkage Instructions: ;AN000;
  41. ;; --------------------- ;AN000;
  42. ;; Refer to GRAPHICS.ASM ;AN000;
  43. ;; ;AN000;
  44. ;; Change History: ;AN000;
  45. ;; --------------- ;AN000;
  46. ;; ;AN000;
  47. ;; ;AN000;
  48. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  49. ;; ;AN000;
  50. ;; ;AN000;
  51. CODE SEGMENT PUBLIC 'CODE' ;; ;AN000;
  52. ASSUME CS:CODE,DS:CODE ;; ;AN000;
  53. INCLUDE GRCTRL.EXT ;; Bring in external declarations ;AN000;
  54. INCLUDE GRCTRL.STR ;; for transient command processing ;AN000;
  55. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  56. ;; ;AN000;
  57. ;; Public Symbols ;AN000;
  58. ;; ;AN000;
  59. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  60. ;; ;AN000;
  61. PUBLIC COPY_SHARED_DATA ;; ;AN000;
  62. ;; ;AN000;
  63. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  64. ;; ;AN000;
  65. ;; Module Name: ;AN000;
  66. ;; COPY_SHARED_DATA ;AN000;
  67. ;; ;AN000;
  68. ;; Input Parameters: ;AN000;
  69. ;; DS : SI - points to the Temporary Shared Data Area ;AN000;
  70. ;; ES : DI - destination for resident Shared Data Area ;AN000;
  71. ;; BP - offset for new Shared Data Area (same as DI) ;AN000;
  72. ;; AH - Function code for exiting to DOS: ;AN000;
  73. ;; 31H : Terminate & Stay Resident - if first time ;AN000;
  74. ;; 4CH : Terminate - if already installed ;AN000;
  75. ;; DX - resident data segment size in paragraphs ;AN000;
  76. ;; ;AN000;
  77. ;; Output Parameters: ;AN000;
  78. ;; NONE ;AN000;
  79. ;; ;AN000;
  80. ;; Data Structures Referenced: ;AN000;
  81. ;; Control Variables ;AN000;
  82. ;; ;AN000;
  83. ;; Description: ;AN000;
  84. ;; Copy the Temporary Shared Data area over the installation modules ;AN000;
  85. ;; and terminate (stay resident). The data is copied immediately ;AN000;
  86. ;; following this module. ;AN000;
  87. ;; ;AN000;
  88. ;; Called By: ;AN000;
  89. ;; GRAPHICS_INSTALL ;AN000;
  90. ;; ;AN000;
  91. ;; External Calls: ;AN000;
  92. ;; NONE ;AN000;
  93. ;; ;AN000;
  94. ;; Logic: ;AN000;
  95. ;; Copy Temporary Shared Data Area ;AN000;
  96. ;; Set PRINT_SCREEN_ALLOWED to YES ;AN000;
  97. ;; Exit to DOS (Function Code 31 or 4C setup by caller) ;AN000;
  98. ;; ;AN000;
  99. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  100. ;; ;AN000;
  101. COPY_SHARED_DATA PROC NEAR ;; ;AN000;
  102. ;; ;AN000;
  103. REP MOVSB ;; Copy Shared Data from temporary ;AN000;
  104. ;; build area to resident memory ;AN000;
  105. ;; Allow print screens now ;AN000;
  106. MOV ES:PRINT_SCREEN_ALLOWED,YES ;AN000;
  107. ;; ;AN000;
  108. INT 21H ;; Exit ;AN000;
  109. ;; ;AN000;
  110. COPY_SHARED_DATA ENDP ;; ;AN000;
  111. ;; ;AN000;
  112. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
  113. CODE ENDS ;AN000;
  114. END COPY_SHARED_DATA ;AN000;
  115.