summaryrefslogtreecommitdiff
path: root/v4.0/src/CMD/COMP/COMPEQ.INC
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/CMD/COMP/COMPEQ.INC')
-rw-r--r--v4.0/src/CMD/COMP/COMPEQ.INC184
1 files changed, 184 insertions, 0 deletions
diff --git a/v4.0/src/CMD/COMP/COMPEQ.INC b/v4.0/src/CMD/COMP/COMPEQ.INC
new file mode 100644
index 0000000..5272927
--- /dev/null
+++ b/v4.0/src/CMD/COMP/COMPEQ.INC
@@ -0,0 +1,184 @@
1;*****************************************************************************
2;
3; MODULE: compeq.inc
4;
5; Modification History:
6;
7; version author date comment
8; ------- ------ ---- -------
9; V4.0 Bill L. 9/17/87 moved equates from comp2.sal to here!
10;
11;*****************************************************************************
12 if1 ;AN000;
13 %OUT INCLUDING COMPEQ.INC... ;AN000;
14 endif ;AN000;
15
16EAISBINARY equ 02h ;extended attribute is a binary integer ;AN001;
17EASYSTEM equ 8000h ;extended attr. is system defined ;AN001;
18
19VERSION EQU 00H ;DOS VERSION, =00H (NOT USED) ;AN000;
20NUL EQU 00H ;END OF STRING (ASCIIZ) MARKER ;AN000;
21ONE_PARM EQU 01H ;ONLY PARSE ONE PARAMETER ;AN000;
22ZERO_PARM_CT EQU 00H ;ORDINAL # BEFORE PARSING FIRST PARM. ;AN000;
23FIRST_PARM_CT EQU 01H ;ORDINAL # AFTER PARSING FIRST PARM. ;AN000;
24TRICK_PARM_CT EQU 02H ;TRICK PARSER SO THAT FILENAME GOES TO PATH2 ;AN000;
25 ;INSTEAD OF PATH1 ;AN000;
26YES EQU 01H ;A VALID YES RESPONSE EQUALS 1 ;AN000;
27KEYB_INP_CLR EQU 0C1H ; does an INT 21H fuction 0CH, 01H ;AN000;
28KEYB_INPUT EQU 0FFH ;DO A READ ON CLEAR KEYBOARD ;AN000;
29INPUT_LEN EQU 127 ;LENGTH OF INPUT BUFFER ON BUFFERED INPUT ;AN000;
30KEYIN EQU 01H ;WAIT FOR KEYBOARD INPUT TO AL ;AN000;
31DISP_OUT EQU 02H ;DL = CHAR TO BE DISPLAYED TO STD OUT ;AN000;
32DIRECT_IO EQU 06H ;DUMBY CALL, USED IN CLEARING KEYBOARD ;AN000;
33BUFFD_KEYBD EQU 0AH ;BUFFERED KEYBOARD INPUT TO DX ;AN000;
34IN_STAT EQU 0BH ;check keyboard status ;AC210;
35CLEAR_KEYBD EQU 0CH ;CLEAR KEYB, DO KEYB FUNC IN AL ;AN000;
36FCBOpen equ 0FH ;fcb open ;AN000;
37FCBCLOSE EQU 10H ;FCB CLOSE FILE ;AN000;
38SearchF equ 11H ;FCB Search function call ;AN000;
39SEARCHN EQU 12H ;FCB SEARCH NEXT ;AN000;
40SetDTA equ 1AH ;Set DTA ;AN000;
41DEFDRV equ 19H ;get default drive ;AN000;
42YESNO_CHECK EQU 23H ;CHECK (Y/N) RESPONSE ON INPUT (EXTENDED COUNTRY INFO) ;AN000;
43SETVECTOR equ 25H ;set interrupt vector in AL to DS:DX ;AN000;
44FCBRndBlkRead equ 27H ;Read function call ;AN000;
45PARSE_FILENAME EQU 29H ;PARSE FILENAME ;AN000;
46GETVER equ 30H ;get dos version ;AN000;
47CHDIR equ 3BH ;CHDIR function call ;AN000;
48HandleOpen equ 3DH ;Handle open function call ;AN000;
49HANDLECLOSE EQU 3EH ;HANDLE CLOSE FUNCTION CALL ;AN000;
50Write equ 40H ;Write function call ;AN000;
51CURDIR equ 47H ;get current directory for drive in [dl] ;AN000;
52RET_FN EQU 4CH ;"RETURN TO DOS" NOT REMAIN RESIDENT ;AN000;
53GET_EXT_CNTRY_INFO EQU 65H ;EXTENED COUNTRY INFO DOS CALL ;AN000;
54
55STDOUT equ 0001H ;Standard output device ;AN000;
56STDERR equ 0002H ;Standard error device ;AN000;
57
58ReadOnlyAccess equ 00H ;Access code for Handle Open function call ;AN000;
59
60CPSW_CHECK EQU 33H ;CODE PAGE SWITCHING CONTROL ;AN000;
61GET_CPSW_STATE EQU 03H ;AL=3, GET STATE TO DL ;AN000;
62SET_CPSW_STATE EQU 04H ;AL=4, SET STATE FROM DL ;AN000;
63CPSW_OFF EQU 00H ; DL=0, OFF ;AN000;
64CPSW_ON EQU 01H ; DL=1, ON ;AN000;
65CPSW EQU 40H ;IN CPSW_ORIG: ON, CPSW=ON ;AN000;
66ZERO_CP EQU 00H ; A ZERO CODE PAGE ;AN000;
67
68; EXTENDED OPEN EQUATES ; LOOK ;AN000;
69NO_ATTR_LIST EQU 00H ;NO ATTRIBUTE LIST NEEDED || ;AN000;
70OPEN_MODE EQU 82H ;OPEN MODE FOR EXTENDED OPEN || ;AN000;
71FUNC_CNTRL EQU 0101H ;FUNCTION CONTROL FOR EXTENDED OPEN || ;AN000;
72EXT_OPEN_RD EQU 00H ;READ MODE ON EXTENDED OPEN \/ ;AN000;
73EXT_OPEN EQU 6CH ;EXTENDED OPEN ;AN000;
74 ;AL=FUNCTION CONTROL, IN FORMAT=CE ;AN000;
75 ; C=DOES NOT EXIST ACTION: ;AN000;
76 ; 0=FAIL, 1=CREATE ;AN000;
77 ; E=EXISTS ACTION ;AN000;
78 ; 0=FAIL, 1=OPEN, 2=REPLACE/OPEN ;AN000;
79 ;BX=OPEN MODE, FORMAT=0WF00000ISSS0AAA ;AN000;
80 ; AAA=ACCESS CODE: 0=READ, 1=WRITE ;AN000;
81 ; 2=READ/WRITE, 4=EXECUTE (UNDOC) ;AN000;
82 ; 7=FCB (UNDOC) ;AN000;
83 ; SSS=SHARING MODE: 0=COMPATIBILITY ;AN000;
84 ; 1=DENY READ/WRITE, 2=DENY WRITE ;AN000;
85 ; 2=DENY READ, 3=DENY NONE ;AN000;
86 ; I=0, PASS HANDLE TO CHILD, 1=NO INHERIT ;AN000;
87 ; F=0, INT 24H, 1=RETURN ERROR ;AN000;
88 ;ON THIS OPEN AND ANY IO TO THIS HANDLE ;AN000;
89 ; W=0, NO COMMIT, 1=AUTO-COMMIT ON WRITE ;AN000;
90 ;CX=SCARCH/CREATE ATTRIBUTE ;AN000;
91 ;DX=FUNCTION CONTROL, 0000000C NNNNEEEE ;AN000;
92 ; NNNN=DOES NOT EXIST ACTION: ;AN000;
93 ; 0=FAIL,1=CREATE ;AN000;
94 ; EEEE=DOES EXIST ACTION: ;AN000;
95 ; 0=FAIL,1=OPEN,2=REPLACE/OPEN ;AN000;
96 ; C=CODEPAGE ACTION: ;AN000;
97 ; 0=VALIDATE, 1=NO CHECK CODE PAGE ;AN000;
98 ;DS:SI=PARM LIST: ;AN000;
99 ; DD POINT TO NAME TO OPEN ;AN000;
100 ; DB NUMBER OF ADDITIONAL PARMS ;AN000;
101 ; DB 1 IO MODE ;AN000;
102 ; DB IOMODE ;AN000;
103 ; ???0H=UNSPECIFIED (DEFAULT) ;AN000;
104 ; ???1H=MAINLY SEQUENTIAL ;AN000;
105 ; ???2H=MAINLY RANDOM ;AN000;
106 ; ???3H=RANDOM WITH LOCALITY ;AN000;
107 ; ???=RESERVED (SET TO ZERO) ;AN000;
108 ;ES:DI=EXTENTED ATTR LIST ;AN000;
109
110 ;OUTPUT: CY SET ON ERROR ;AN000;
111 ; AX=HANDLE ;AN000;
112 ; CX=ACTION TAKEN: 1=FILE OPENED, ;AN000;
113 ; 2=FILE CREATED/OPENED, ;AN000;
114 ; 3=FILE REPLACED/OPENED ;AN000;
115
116EXT_ATTR_LIST EQU 57H ;FUNCTION # : EXTENDED ATTR LIST ;AN000;
117GET_EXT_ATTR_LIST EQU 02H ;SUB-FUNC. # : GET EXTENDED ATTR TO LIST ;AN000;
118 ;BX=HANDLE ;AN000;
119 ;ES:DI=LIST ;AN000;
120 ;CY SET IF ERROR ;AN000;
121
122
123EXTERROR EQU 59H ;EXTENDED ERROR ;AN000;
124 ;BX = 40 VERSION NUMBER (FOR 3.40) ;AN000;
125 ;OUTPUT: ;AN000;
126 ;AX=EXTENDED ERROR ;AN000;
127 ;BH=ERROR CLASS ;AN000;
128 ;BL=SUGGESTED ACTION ;AN000;
129 ;CH=LOCUS ;AN000;
130
131; ERRORLEVEL RETURN CODES, PASSED IN "EXITFL" ;AN000;
132EXOK EQU 0 ;NORMAL RETURN CODE, NO PROBLEM ;AN000;
133EXCB EQU 1 ;CONTROL BREAK EXIT ;AN000;
134EXVER EQU 1 ;BAD DOS VERSION OR OTHER ;AN000;
135 ; SYSLOADMSG DIFFICULTY ;AN000;
136
137; VALUES FOR THE MSG_DESC CONTROL BLOCK ;AN000;
138NO_SUBS EQU 0 ;NO VARIABLE FIELDS IN MESSAGE ;AN000;
139ONE_SUBS EQU 1 ;ONE VARIABLE FIELD IN MESSAGE ;AN000;
140TWO_SUBS EQU 2 ;TWO VARIABLE FIELDS IN MESSAGE ;AN000;
141THREE_SUBS EQU 3 ;THREE VARIABLE FIELDS IN MESSAGE ;AN000;
142CLASS_1 EQU 1 ;CLASS 1 (DOS EXTENDED ERRORS) ;AN000;
143CLASS_2 EQU 2 ;CLASS 2 (PARSE ERRORS) ;AN000;
144CLASS_A EQU -1 ;CLASS A TYPE MESSAGE ;AN000;
145
146;***************************** ;AN000;
147; Message Retriever structures ;AN000;
148;***************************** ;AN000;
149
150msg_desc struc ;AN000;
151msg_num dw 0 ;MESSAGE NUMBER (TO AX) ;AN000;
152msg_handle dw STDOUT ;HANDLE OF OUTPUT DEVICE (TO BX) ;AN000;
153msg_sublist dw 0 ;POINTER TO SUBLIST (TO SI) ;AN000;
154msg_count dw 0 ;SUBSTITUTION COUNT (TO CX) ;AN000;
155msg_class dw CLASS_A shl 8 ;MESSAGE CLASS (IN HIGH BYTE, TO DH) ;AN000;
156 ;LOW BYTE HAS 0 (FUNCTION "NO INPUT", TO DL) ;AN000;
157msg_input dw ? ;######EXTRA WORD - ONLY FOR MESSAGES WITH BUFFERED INPUT ;AN000;
158 ;######OTHERWISE THIS WORD IS NOT VALID AS PART OF THE STRUCT ;AN000;
159 ;POINTER TO INPUT BUFFER ;AN000;
160msg_desc ends ;AN000;
161
162MAX_0 equ 0 ;MAXIMUM WIDTH OF STRING FIELD (0=NO LIMIT) ;AN000;
163PAD_BLK equ " " ;CHAR FOR PAD FIELD ;AN000;
164
165
166sublist struc ;AN000;
167sub_size db 11 ;SUBLIST SIZE (POINTER TO NEXT SUBLIST) ;AN000;
168sub_res db 0 ;RESERVED ;AN000;
169 ;NEXT FIELD IS TO BE USED AS A DOUBLE WORD ;AN000;
170sub_value dw 0 ;TIME, DATE, OR PTR TO DATA ITEM ;AN000;
171sub_value_seg dw 0 ;SEG ID OF PTR ;AN000;
172 ;(ABOVE FIELD MUST BE FILLED AT EXECUTION TIME ;AN000;
173 ; IF THIS IS A .COM FILE) ;AN000;
174sub_id db 0 ;N OF %N ;AN000;
175sub_flags db 0 ;DATA TYPE FLAGS ;AN000;
176sub_max_width db MAX_0 ;MAXIMUM FIELD WIDTH (0=UNLIMITED) ;AN000;
177sub_min_width db 0 ;MINIMUM FIELD WIDTH ;AN000;
178sub_pad_char db PAD_BLK ;CHARACTER FOR PAD FIELD ;AN000;
179 ; CAN BE " ", "0" OR ",". ;AN000;
180 ; "," CAUSES INSERTION OF THE ACTIVE ;AN000;
181 ; THOUSANDS SEPARATOR BETWEEN EVERY 3 DIGITS. ;AN000;
182sublist ends ;AN000;
183
184;end of COMPEQ.INC ;AN000;