summaryrefslogtreecommitdiff
path: root/v4.0/src/INC/MS_DATA.ASM
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/INC/MS_DATA.ASM')
-rw-r--r--v4.0/src/INC/MS_DATA.ASM194
1 files changed, 194 insertions, 0 deletions
diff --git a/v4.0/src/INC/MS_DATA.ASM b/v4.0/src/INC/MS_DATA.ASM
new file mode 100644
index 0000000..fa1c855
--- /dev/null
+++ b/v4.0/src/INC/MS_DATA.ASM
@@ -0,0 +1,194 @@
1; SCCSID = @(#)msdata.asm 1.8 85/09/12
2 AsmVars <Kanji, Debug, Redirector, ShareF>
3
4Break <Uninitialized data overlayed by initialization code>
5
6DATA SEGMENT WORD PUBLIC 'DATA'
7; Init code overlaps with data area below
8
9 ORG 0
10PUBLIC MSDAT001S,MSDAT001E
11MSDAT001S label byte
12
13 I_am TIMEBUF,6 ; Time read from clock device
14 I_am DEVIOBUF,2 ; Buffer for I/O under file assignment
15;
16; The following areas are used as temp buffer in EXEC system call
17;
18 I_am OPENBUF,128 ; buffer for name operations
19 I_am RenBuf,128 ; buffer for rename destination
20; Buffer for search calls
21 I_am SEARCHBUF,53 ; internal search buffer
22 I_am DummyCDS,curdirLen
23;
24; End of contiguous buffer
25;
26
27;
28; Temporary directory entry for use by many routines. Device directory
29; entries (bogus) are built here.
30;
31 PUBLIC DevFCB
32DEVFCB LABEL BYTE ; Uses NAME1, NAME2, combined
33; WARNING.. do not alter position of NAME1 relative to DEVFCB
34; without first examining BUILD_DEVICE_ENT. Look carefully at DOS_RENAME
35; as well as it is the only guy who uses NAME2 and DESTSTART.
36 I_am NAME1,12 ; File name buffer
37 I_am NAME2,13 ;
38 I_am DESTSTART,WORD ;
39 DB ((SIZE DIR_ENTRY) - ($ - DEVFCB)) DUP (?)
40;
41; End Temporary directory entry.
42;
43 I_am ATTRIB,BYTE ; storage for file attributes
44 I_am EXTFCB,BYTE ; TRUE => extended FCB in use
45 I_am SATTRIB,BYTE ; Storage for search attributes
46 I_AM open_access,BYTE ; access of open system call
47 I_am FoundDel,BYTE ; true => file was deleted
48 I_am Found_dev,BYTE ; true => search found a device
49 I_am fSplice,BYTE ; true => do a splice in transpath
50 I_am fSharing,BYTE ; TRUE => no redirection
51 I_am SECCLUSPOS,BYTE ; Position of first sector within cluster
52 I_am TRANS,BYTE ;
53 I_am READOP,BYTE ;
54 I_am THISDRV,BYTE ;
55 I_am CLUSFAC,BYTE ;
56 I_am CLUSSPLIT,BYTE ;
57 I_am INSMODE,BYTE ; true => insert mode in buffered read
58 I_am cMeta,BYTE ; count of meta'ed components found
59 I_am VOLID,BYTE ;
60 I_am exit_type,BYTE ; type of exit...
61
62 EVEN
63
64; WARNING - the following two items are accessed as a word
65 I_am CREATING,BYTE ; true => creating a file
66 I_am DELALL,BYTE ; true => deleting everything
67
68 I_am EXITHOLD,DWORD ; Temp location for proc terminate
69 I_am user_SP,WORD ; User SP for system call
70 I_am user_SS,WORD ; User SS for system call
71 I_am CONTSTK,WORD ;
72 I_am THISDPB,DWORD ;
73 I_am CLUSSAVE,WORD ;
74 I_am CLUSSEC,DWORD ;>32mb AC0000
75 I_am PREREAD,WORD ; 0 means preread; 1 means optional
76 I_am FATBYT,WORD ; Used by ALLOCATE
77 I_am FATBYTE,WORD ; Used by $SLEAZEFUNC
78 I_am DEVPT,DWORD ;
79 I_am THISSFT,DWORD ; Address of user SFT
80 I_am THISCDS,DWORD ; Address of current CDS
81 I_am THISFCB,DWORD ; Address of user FCB
82 I_am SFN,WORD,<-1> ; SystemFileNumber found for accessfile
83 I_am JFN,WORD ; JobFileNumber found for accessfile
84 I_am PJFN,DWORD ; PointerJobFileNumber found for accessfile
85 I_am WFP_START,WORD ;
86 I_am REN_WFP,WORD ;
87 I_am CURR_DIR_END,WORD ;
88 I_am NEXTADD,WORD ;
89 I_am LASTPOS,WORD ;
90 I_am CLUSNUM,WORD ;
91 I_am DIRSEC,DWORD ;>32mb AC0000
92 I_am DIRSTART,WORD ;
93 I_am SECPOS,DWORD ;>32mb Position of first sector accessed
94 I_am VALSEC,DWORD ;>32mb Number of valid (previously written)
95 ; sectors
96 I_am BYTSECPOS,WORD ; Position of first byte within sector
97 I_am BYTPOS,4 ; Byte position in file of access
98 I_am BYTCNT1,WORD ; No. of bytes in first sector
99 I_am BYTCNT2,WORD ; No. of bytes in last sector
100 I_am SECCNT,WORD ; No. of whole sectors
101 I_am ENTFREE,WORD ;
102 I_am ENTLAST,WORD ;
103 I_am NXTCLUSNUM,WORD ;
104 I_am GROWCNT,DWORD ;
105 I_am CURBUF,DWORD ;
106 I_am CONSft,DWORD ; SFT of console swapped guy.
107 I_am SaveBX,WORD ;
108 I_am SaveDS,WORD ;
109 I_am restore_tmp,WORD ; return address for restore world
110 I_am NSS,WORD
111 I_am NSP,WORD
112 I_am EXTOPEN_FLAG,WORD,<0> ;FT. extended open input flag ;AN000;
113 I_am EXTOPEN_ON,BYTE,<0> ;FT. extended open conditional flag ;AN000;
114 I_am EXTOPEN_IO_MODE,WORD,<0>;FT. extende open io mode ;AN000;
115 I_am SAVE_DI,WORD ;FT. extende open saved DI ;AN000;
116 I_am SAVE_ES,WORD ;FT. extende open saved ES ;AN000;
117 I_am SAVE_DX,WORD ;FT. extende open saved DX ;AN000;
118 I_am SAVE_CX,WORD ;FT. extende open saved CX ;AN000;
119 I_am SAVE_BX,WORD ;FT. extende open saved BX ;AN000;
120 I_am SAVE_SI,WORD ;FT. extende open saved SI ;AN000;
121 I_am SAVE_DS,WORD ;FT. extende open saved DS ;AN000;
122 I_am HIGH_SECTOR,WORD,<0> ;>32mb higher sector # ;AN000;
123 I_am HIGH_SECTOR_TEMP,WORD,<0>;>32mb high sector # ;AN000;
124 I_am DISK_FULL,BYTE ;>32mb indicating disk full when 1 ;AN000;
125 I_am TEMP_VAR,WORD ; temporary variable for everyone ;AN000;
126 I_am TEMP_VAR2,WORD ; temporary variable 2 for everyone ;AN000;
127 I_am DrvErr,BYTE ; used to save drive error ;AN000;
128 I_am DOS34_FLAG,WORD,<0> ; common flag for DOS 3.4 ;AN000;
129 I_am NO_FILTER_PATH,DWORD ; pointer to orignal path ;AN000;
130 I_am NO_FILTER_DPATH,DWORD ; pointer to orignal path of destination;AN000;
131 I_am Callback_SS,WORD ;AN000; call back SS for system call
132 I_am Callback_SP,WORD ;AN000; call back SP for system call
133 I_am Callback_flag,BYTE,<0> ;AN000; call back flag
134
135
136; make those pushes fast!!!
137EVEN
138StackSize = 180h ; gross but effective
139;;;StackSize = 300h ; This is a "trial" change IBM hasn't
140;;; ; made up their minds about
141
142;
143; WARNING!!!! DskStack may grow into AUXSTACK due to interrupt service.
144; This is NO problem as long as AUXSTACK comes immediately before DSKSTACK
145;
146
147 PUBLIC RENAMEDMA,AuxStack,DskStack,IOStack
148RENAMEDMA LABEL BYTE ; See DOS_RENAME
149
150 DB StackSize DUP (?) ;
151AuxStack LABEL BYTE
152
153 DB StackSize DUP (?) ;
154DskStack LABEL BYTE
155
156 DB StackSize DUP (?) ;
157IOStack LABEL BYTE
158
159
160; patch space for Boca folks.
161; Say What????!!! This does NOT go into the swappable area!
162; NOTE: We include the decl of ibmpatch in ms-dos even though it is not needed.
163; This allows the REDIRector to work on either IBM or MS-DOS.
164
165PUBLIC IBMPATCH
166IBMPATCH label byte
167 I_am PRINTER_FLAG,BYTE,<0> ; [SYSTEM] status of PRINT utility
168 I_am VOLCHNG_FLAG,BYTE,<0> ; [SYSTEM] true if volume label created
169 I_am VIRTUAL_OPEN,BYTE,<0> ; [SYSTEM] non-zero if we opened a virtual file
170
171; Following 4 variables moved to MSDATA.asm from MSTABLE.asm (P4986)
172 I_am FSeek_drive,BYTE ;AN000; fastseek drive #
173 I_am FSeek_firclus,WORD ;AN000; fastseek first cluster #
174 I_am FSeek_logclus,WORD ;AN000; fastseek logical cluster #
175 I_am FSeek_logsave,WORD ;AN000; fastseek returned log clus #
176 I_am ACT_PAGE,WORD,<-1> ;;;;;;; ;BL ; active EMS page ;AN000;
177
178
179SWAP_END LABEL BYTE
180PUBLIC SWAP_END
181
182; THE FOLLOWING BYTE MUST BE HERE, IMMEDIATELY FOLLOWING SWAP_END. IT CANNOT
183; BE USED. If the size of the swap data area is ODD, it will be rounded up
184; to include this byte.
185 DB ?
186
187 DB (512+80+32-(SWAP_END-ibmpatch)) DUP (?)
188
189MSDAT001e label byte
190
191.xall
192
193DATA ENDS
194 \ No newline at end of file