summaryrefslogtreecommitdiff
path: root/v4.0/src/CMD/GRAPHICS/GRCPSD.ASM
diff options
context:
space:
mode:
authorGravatar Mark Zbikowski2024-04-25 21:24:10 +0100
committerGravatar Microsoft Open Source2024-04-25 22:32:27 +0000
commit2d04cacc5322951f187bb17e017c12920ac8ebe2 (patch)
tree80ee017efa878dfd5344b44249e6a241f2a7f6e2 /v4.0/src/CMD/GRAPHICS/GRCPSD.ASM
parentMerge pull request #430 from jpbaltazar/typoptbr (diff)
downloadms-dos-main.tar.gz
ms-dos-main.tar.xz
ms-dos-main.zip
MZ is back!HEADmain
Diffstat (limited to 'v4.0/src/CMD/GRAPHICS/GRCPSD.ASM')
-rw-r--r--v4.0/src/CMD/GRAPHICS/GRCPSD.ASM109
1 files changed, 109 insertions, 0 deletions
diff --git a/v4.0/src/CMD/GRAPHICS/GRCPSD.ASM b/v4.0/src/CMD/GRAPHICS/GRCPSD.ASM
new file mode 100644
index 0000000..28c2d10
--- /dev/null
+++ b/v4.0/src/CMD/GRAPHICS/GRCPSD.ASM
@@ -0,0 +1,109 @@
1 PAGE ,132 ;AN000;
2 TITLE DOS GRAPHICS Command - Copy Shared Data
3 ;AN000;
4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
5;; DOS - GRAPHICS Command
6;; (C) Copyright 1988 Microsoft
7;; ;AN000;
8;; File Name: GRCPSD.ASM ;AN000;
9;; ---------- ;AN000;
10;; ;AN000;
11;; Description: ;AN000;
12;; ------------ ;AN000;
13;; This file contains the COPY_SHARED_DATA module. ;AN000;
14;; ;AN000;
15;; ;AN000;
16;; Documentation Reference: ;AN000;
17;; ------------------------ ;AN000;
18;; PLACID Functional Specifications ;AN000;
19;; OASIS High Level Design ;AN000;
20;; OASIS GRAPHICS I1 Overview ;AN000;
21;; ;AN000;
22;; Procedures Contained in This File: ;AN000;
23;; ---------------------------------- ;AN000;
24;; COPY_SHARED_DATA - Copy the Shared Data Area from temporary ;AN000;
25;; build area to resident memory & exit to DOS ;AN000;
26;; ;AN000;
27;; Include Files Required: ;AN000;
28;; ----------------------- ;AN000;
29;; None ;AN000;
30;; ;AN000;
31;; External Procedure References: ;AN000;
32;; ------------------------------ ;AN000;
33;; None ;AN000;
34;; ;AN000;
35;; Linkage Instructions: ;AN000;
36;; --------------------- ;AN000;
37;; Refer to GRAPHICS.ASM ;AN000;
38;; ;AN000;
39;; Change History: ;AN000;
40;; --------------- ;AN000;
41;; ;AN000;
42;; ;AN000;
43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
44 ;; ;AN000;
45 ;; ;AN000;
46CODE SEGMENT PUBLIC 'CODE' ;; ;AN000;
47 ASSUME CS:CODE,DS:CODE ;; ;AN000;
48 INCLUDE GRCTRL.EXT ;; Bring in external declarations ;AN000;
49 INCLUDE GRCTRL.STR ;; for transient command processing ;AN000;
50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
51;; ;AN000;
52;; Public Symbols ;AN000;
53;; ;AN000;
54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
55 ;; ;AN000;
56 PUBLIC COPY_SHARED_DATA ;; ;AN000;
57 ;; ;AN000;
58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
59;; ;AN000;
60;; Module Name: ;AN000;
61;; COPY_SHARED_DATA ;AN000;
62;; ;AN000;
63;; Input Parameters: ;AN000;
64;; DS : SI - points to the Temporary Shared Data Area ;AN000;
65;; ES : DI - destination for resident Shared Data Area ;AN000;
66;; BP - offset for new Shared Data Area (same as DI) ;AN000;
67;; AH - Function code for exiting to DOS: ;AN000;
68;; 31H : Terminate & Stay Resident - if first time ;AN000;
69;; 4CH : Terminate - if already installed ;AN000;
70;; DX - resident data segment size in paragraphs ;AN000;
71;; ;AN000;
72;; Output Parameters: ;AN000;
73;; NONE ;AN000;
74;; ;AN000;
75;; Data Structures Referenced: ;AN000;
76;; Control Variables ;AN000;
77;; ;AN000;
78;; Description: ;AN000;
79;; Copy the Temporary Shared Data area over the installation modules ;AN000;
80;; and terminate (stay resident). The data is copied immediately ;AN000;
81;; following this module. ;AN000;
82;; ;AN000;
83;; Called By: ;AN000;
84;; GRAPHICS_INSTALL ;AN000;
85;; ;AN000;
86;; External Calls: ;AN000;
87;; NONE ;AN000;
88;; ;AN000;
89;; Logic: ;AN000;
90;; Copy Temporary Shared Data Area ;AN000;
91;; Set PRINT_SCREEN_ALLOWED to YES ;AN000;
92;; Exit to DOS (Function Code 31 or 4C setup by caller) ;AN000;
93;; ;AN000;
94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
95 ;; ;AN000;
96COPY_SHARED_DATA PROC NEAR ;; ;AN000;
97 ;; ;AN000;
98 REP MOVSB ;; Copy Shared Data from temporary ;AN000;
99 ;; build area to resident memory ;AN000;
100 ;; Allow print screens now ;AN000;
101 MOV ES:PRINT_SCREEN_ALLOWED,YES ;AN000;
102 ;; ;AN000;
103 INT 21H ;; Exit ;AN000;
104 ;; ;AN000;
105COPY_SHARED_DATA ENDP ;; ;AN000;
106 ;; ;AN000;
107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
108CODE ENDS ;AN000;
109 END COPY_SHARED_DATA ;AN000;