summaryrefslogtreecommitdiff
path: root/v4.0/src/CMD/BACKUP/BACKPARS.H
blob: e43ae0d172a6f8b522d7b4f42d7a15df16297ace (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
/* 0 */
/*-----------------------------------------------------------------------*/
/*-									-*/
/*-	FILE:	 BACKPARS.H						-*/
/*-									-*/
/*-	PURPOSE: Defines structures and DEFINES for the DOS PARSE	-*/
/*-		 service routines.					-*/
/*-									-*/
/*-	DATE:  	 6/5/87							-*/
/*-									-*/
/*-----------------------------------------------------------------------*/


/**********************************************************/
/* STRUCTURE TO DEFINE ADDITIONAL COMMAND LINE DELIMITERS */
/**********************************************************/
struct p_parms								/*;AN000;4*/
	{								/*;AN000;4*/
	 WORD	parmsx_ptr;		/* POINTER TO PARMS STRUCTURE *//*;AN000;4*/
	 BYTE	p_num_extra;		/* 1 SAYS THAT A DELIMITER LIST FOLLOWS */ /*;AN000;4*/
	 BYTE	p_len_extra_delim;	/* NUMBER OF ADDITIONAL DELIMITERS *//*;AN000;4*/
	 BYTE	p_extra_delim[2];	/* ADDITIONAL DELIMITERS */	/*;AN000;4*/
	};								/*;AN000;4*/

/**************************************************/
/* STRUCTURE TO DEFINE BACKUP SYNTAX REQUIREMENTS */
/**************************************************/
struct	p_parmsx							    /*;AN000;4*/
	{								    /*;AN000;4*/
	 BYTE  p_minpos;       /* THERE ARE 2 REQUIRED POSITIONAL PARMS*/   /*;AN000;4*/
	 BYTE  p_maxpos;       /* THERE ARE 2 REQUIRED POSITIONAL PARMS*/   /*;AN000;4*/
	 WORD  pos1_ptr;       /* POINTER TO SOURCE FILESPEC DEF AREA*/     /*;AN000;4*/
	 WORD  pos2_ptr;       /* POINTER TO TARGET DRIVE DEF AREA*/	    /*;AN000;4*/
	 BYTE  num_sw;	       /* THERE ARE 7 SWITCHES (/S, /F, /M, /A, /L:, /T:, /D:)	*/ /*;AN000;4*/
	 WORD  sw1_ptr;        /* POINTER TO FIRST  SWITCH DEFINITION AREA*//*;AN000;4*/
	 WORD  sw2_ptr;        /* POINTER TO SECOND SWITCH DEFINITION AREA*//*;AN000;4*/
	 WORD  sw3_ptr;        /* POINTER TO THIRD  SWITCH DEFINITION AREA*//*;AN000;4*/
	 WORD  sw4_ptr;        /* POINTER TO FOURTH SWITCH DEFINITION AREA*//*;AN000;4*/
	 WORD  sw5_ptr;        /* POINTER TO FIFTH  SWITCH DEFINITION AREA*//*;AN000;4*/
	 WORD  num_keywords;   /* NUMBER OF KEYWORDS IN BACKUP SYNTAX*/     /*;AN000;4*/
	};								    /*;AN000;4*/

/****************************************/
/* STRUCTURE TO DEFINE POSITIONAL PARMS */
/****************************************/
struct p_pos_blk							/*;AN000;4*/
	{								/*;AN000;4*/
	 WORD	match_flag;		/* Controls type matched */	/*;AN000;4*/
	 WORD	function_flag;		/* Function should be taken */	/*;AN000;4*/
	 WORD	result_buf;		/* Result buffer address */	/*;AN000;4*/
	 WORD	value_list;		/* Value list address */	/*;AN000;4*/
	 BYTE	nid;			/* # of keyword/SW synonyms (0) *//*;AN000;4*/
	};								/*;AN000;4*/

/********************************/
/* STRUCTURE TO DEFINE SWITCHES */
/********************************/
struct p_sw_blk 							/*;AN000;4*/
	{								/*;AN000;4*/
	 WORD	p_match_flag;		/* Controls type matched */	/*;AN000;4*/
	 WORD	p_function_flag;	/* Function should be taken */	/*;AN000;4*/
	 WORD	p_result_buf;		/* Result buffer address */	/*;AN000;4*/
	 WORD	p_value_list;		/* Value list address */	/*;AN000;4*/
	 BYTE	p_nid;			/* # of switches */		/*;AN000;4*/
	 BYTE	switch1[3];		/* Save area for switch */	/*;AN000;4*/
	 BYTE	switch2[3];		/* Save area for switch */	/*;AN000;4*/
	 BYTE	switch3[3];		/* Save area for switch */	/*;AN000;4*/
	 BYTE	switch4[3];		/* Save area for switch */	/*;AN000;4*/
	};								/*;AN000;4*/
/**/
/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/

/**************************/
/* RETURN BUFFER FOR TIME */
/**************************/
struct timebuff 							/*;AN000;4*/
	{								/*;AN000;4*/
	 BYTE	t_type;        /* TYPE RETURNED*/			/*;AN000;4*/
	 BYTE	t_item_tag;    /* SPACE FOR ITEM TAG*/			/*;AN000;4*/
	 WORD	t_synonym_ptr; /* pointer to Synonym list returned */	/*;AN000;4*/
	 BYTE	hours;							/*;AN000;4*/
	 BYTE	minutes;						/*;AN000;4*/
	 BYTE	seconds;						/*;AN000;4*/
	 BYTE	hundreds;						/*;AN000;4*/
	};								/*;AN000;4*/

/**************************/
/* RETURN BUFFER FOR DATE */
/**************************/
struct datebuff
	{								/*;AN000;4*/
	 BYTE	d_type;        /* TYPE RETURNED*/			/*;AN000;4*/
	 BYTE	d_item_tag;    /* SPACE FOR ITEM TAG*/			/*;AN000;4*/
	 WORD	d_synonym_ptr; /* pointer to Synonym list returned */	/*;AN000;4*/
	 WORD	year;							/*;AN000;4*/
	 BYTE	month;							/*;AN000;4*/
	 BYTE	day;							/*;AN000;4*/
	};								/*;AN000;4*/


/*******************************************/
/* RETURN BUFFER FOR POSITIONAL PARAMETERS */
/*******************************************/
struct p_result_blk							/*;AN000;4*/
	{								/*;AN000;4*/
	 BYTE	p_type; 		/* Type returned */		/*;AN000;4*/
	 BYTE	p_item_tag;		/* Matched item tag */		/*;AN000;4*/
	 WORD	p_synonym_ptr;		/* pointer to Synonym list returned *//*;AN000;4*/
	 DWORD	p_string_ptr;		/* Pointer to string		/*;AN000;4*/
	};								/*;AN000;4*/

/****************************************/
/* RETURN BUFFER FOR SWITCH INFORMATION */
/****************************************/
struct	switchbuff							/*;AN000;4*/
	{								/*;AN000;4*/
	 BYTE	sw_type;	 /* TYPE RETURNED*/			/*;AN000;4*/
	 BYTE	sw_item_tag;	 /* Matched item tag */ 		/*;AN000;4*/
	 WORD	sw_synonym_ptr;  /* pointer to synonym */		/*;AN000;4*/
	 DWORD	sw_string_ptr;	 /* Pointer to string */		/*;AN000;4*/
	};								/*;AN000;4*/


/********************************/
/* VALUE LIST FOR /F: PARAMETER */
/********************************/
struct	val_list_struct 					     /*;AN000;pxxxx*/
	{							     /*;AN000;pxxxx*/
	 BYTE	nval;						     /*;AN000;pxxxx*/
	 BYTE	num_ranges;					     /*;AN000;pxxxx*/
	 BYTE	num_choices;					     /*;AN000;pxxxx*/
	 BYTE	num_strings;					     /*;AN000;pxxxx*/
	 BYTE	item_tag01;					     /*;AN000;pxxxx*/
	 WORD	val01;						     /*;AN000;pxxxx*/
	 BYTE	item_tag02;					     /*;AN000;pxxxx*/
	 WORD	val02;						     /*;AN000;pxxxx*/
	 BYTE	item_tag03;					     /*;AN000;pxxxx*/
	 WORD	val03;						     /*;AN000;pxxxx*/
	 BYTE	item_tag04;					     /*;AN000;pxxxx*/
	 WORD	val04;						     /*;AN000;pxxxx*/
	 BYTE	item_tag05;					     /*;AN000;pxxxx*/
	 WORD	val05;						     /*;AN000;pxxxx*/
	 BYTE	item_tag06;					     /*;AN000;pxxxx*/
	 WORD	val06;						     /*;AN000;pxxxx*/
	 BYTE	item_tag07;					     /*;AN000;pxxxx*/
	 WORD	val07;						     /*;AN000;pxxxx*/
	 BYTE	item_tag08;					     /*;AN000;pxxxx*/
	 WORD	val08;						     /*;AN000;pxxxx*/
	 BYTE	item_tag09;					     /*;AN000;pxxxx*/
	 WORD	val09;						     /*;AN000;pxxxx*/
	 BYTE	item_tag10;					     /*;AN000;pxxxx*/
	 WORD	val10;						     /*;AN000;pxxxx*/
	 BYTE	item_tag11;					     /*;AN000;pxxxx*/
	 WORD	val11;						     /*;AN000;pxxxx*/
	 BYTE	item_tag12;					     /*;AN000;pxxxx*/
	 WORD	val12;						     /*;AN000;pxxxx*/
	 BYTE	item_tag13;					     /*;AN000;pxxxx*/
	 WORD	val13;						     /*;AN000;pxxxx*/
	 BYTE	item_tag14;					     /*;AN000;pxxxx*/
	 WORD	val14;						     /*;AN000;pxxxx*/
	 BYTE	item_tag15;					     /*;AN000;pxxxx*/
	 WORD	val15;						     /*;AN000;pxxxx*/
	 BYTE	item_tag16;					     /*;AN000;pxxxx*/
	 WORD	val16;						     /*;AN000;pxxxx*/
	 BYTE	item_tag17;					     /*;AN000;pxxxx*/
	 WORD	val17;						     /*;AN000;pxxxx*/
	 BYTE	item_tag18;					     /*;AN000;pxxxx*/
	 WORD	val18;						     /*;AN000;pxxxx*/
	 BYTE	item_tag19;					     /*;AN000;pxxxx*/
	 WORD	val19;						     /*;AN000;pxxxx*/
	 BYTE	item_tag20;					     /*;AN000;pxxxx*/
	 WORD	val20;						     /*;AN000;pxxxx*/
	 BYTE	item_tag21;					     /*;AN000;pxxxx*/
	 WORD	val21;						     /*;AN000;pxxxx*/
	 BYTE	item_tag22;					     /*;AN000;pxxxx*/
	 WORD	val22;						     /*;AN000;pxxxx*/
	 BYTE	item_tag23;					     /*;AN000;pxxxx*/
	 WORD	val23;						     /*;AN000;pxxxx*/
	 BYTE	item_tag24;					     /*;AN000;pxxxx*/
	 WORD	val24;						     /*;AN000;pxxxx*/
	 BYTE	item_tag25;					     /*;AN000;pxxxx*/
	 WORD	val25;						     /*;AN000;pxxxx*/
	 BYTE	item_tag26;					     /*;AN000;pxxxx*/
	 WORD	val26;						     /*;AN000;pxxxx*/
	 BYTE	item_tag27;					     /*;AN000;pxxxx*/
	 WORD	val27;						     /*;AN000;pxxxx*/

	};							     /*;AN000;pxxxx*/

/*********************************/
/* VALUE TABLE FOR /F: PARAMETER */
/*********************************/
struct	val_table_struct					     /*;AN000;pxxxx*/
	{							     /*;AN000;pxxxx*/
	 BYTE	val01[7];					     /*;AN000;pxxxx*/
	 BYTE	val02[7];					     /*;AN000;pxxxx*/
	 BYTE	val03[7];					     /*;AN000;pxxxx*/
	 BYTE	val04[7];					     /*;AN000;pxxxx*/
	 BYTE	val05[7];					     /*;AN000;pxxxx*/
	 BYTE	val06[7];					     /*;AN000;pxxxx*/
	 BYTE	val07[7];					     /*;AN000;pxxxx*/
	 BYTE	val08[7];					     /*;AN000;pxxxx*/
	 BYTE	val09[7];					     /*;AN000;pxxxx*/
	 BYTE	val10[7];					     /*;AN000;pxxxx*/
	 BYTE	val11[7];					     /*;AN000;pxxxx*/
	 BYTE	val12[7];					     /*;AN000;pxxxx*/
	 BYTE	val13[7];					     /*;AN000;pxxxx*/
	 BYTE	val14[7];					     /*;AN000;pxxxx*/
	 BYTE	val15[7];					     /*;AN000;pxxxx*/
	 BYTE	val16[7];					     /*;AN000;pxxxx*/
	 BYTE	val17[7];					     /*;AN000;pxxxx*/
	 BYTE	val18[7];					     /*;AN000;pxxxx*/
	 BYTE	val19[7];					     /*;AN000;pxxxx*/
	 BYTE	val20[7];					     /*;AN000;pxxxx*/
	 BYTE	val21[7];					     /*;AN000;pxxxx*/
	 BYTE	val22[7];					     /*;AN000;pxxxx*/
	 BYTE	val23[7];					     /*;AN000;pxxxx*/
	 BYTE	val24[7];					     /*;AN000;pxxxx*/
	 BYTE	val25[7];					     /*;AN000;pxxxx*/
	 BYTE	val26[7];					     /*;AN000;pxxxx*/
	 BYTE	val27[7];					     /*;AN000;pxxxx*/
	};							     /*;AN000;pxxxx*/