blob: d3f932db49f9350059782ad116b9a6dac51ef93f (
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
|
;
;
;REVISION HISTORY
;
; A005 DCR0201 10/9/87 Incorperate new format for EXTENDED
; ATTRIBUTES.
;
;
;Equates used for flags
;
;*** MY_FLAG ****
find_first_flag equ 01h ;AN000;set MY_FLAG by "OR"
findfile_flag equ 02h ;AN000;
no_more_file equ 04h ;AN000;
single_copy_flag equ 08h ;AN000;single copy instead of multi copy
visit_parent_flag equ 10h ;AN000;visit parent node
found_flag equ 20h ;AN000;found flag - for find subdir
missing_link_flag equ 40h ;AN000;
is_source_flag equ 80h ;AN000;if set, dealing with source
reset_find_first equ 0FEh ;AN000;reset by AND
reset_findfile equ 0FDh ;AN000;
reset_no_more equ 0FBh ;AN000;
reset_visit_parent equ 0EFh ;AN000;
reset_found equ 0DFh ;AN000;
reset_missing_link equ 0BFh ;AN000;
reset_is_source equ 07Fh ;AN000;
;*** FILE_FLAG ***
cont_flag equ 01h ;AN000;
eof_flag equ 02h ;AN000;
big_file_flag equ 04h ;AN000;
file_bigger_flag equ 08h ;AN000;
created_flag equ 10h ;AN000;
reset_cont equ 0FEh ;AN000;
reset_eof equ 0FDh ;AN000;
reset_big_file equ 0FBh ;AN000;
reset_file_bigger equ 0F7h ;AN000;
reset_created equ 0EFh ;AN000;
reset_readfile equ 0F0h ;AN000;reset FILE_FLAG for read a file
;*** COPY_STATUS ***
open_error_flag equ 01h ;AN000;
read_error_flag equ 02h ;AN000;
create_error_flag equ 04h ;AN000;
write_error_flag equ 08h ;AN000;
mkdir_error_flag equ 10h ;AN000;
chdir_error_flag equ 20h ;AN000;
maybe_itself_flag equ 40h ;AN000;source, target starting drv, directory is same.
disk_full_flag equ 80h ;AN000;
reset_open_error equ 0FEh ;AN000;
reset_read_error equ 0FDh ;AN000;
reset_create_error equ 0FBh ;AN000;
reset_write_error equ 0F7h ;AN000;
reset_close_error equ 0EFh ;AN000;
reset_chdir_error equ 0DFh ;AN000;
;*** ACTION_FLAG ***
reading_flag equ 01h ;AN000;display "Reading source files..."
reset_reading equ 0FEh ;AN000;do not display.
;*** SYS_FLAG ***
one_disk_copy_flag equ 01h ;AN000;
default_drv_set_flag equ 02h ;AN000;default drive has been changed by this program
default_s_dir_flag equ 04h ;AN000;source current directory saved.
default_t_dir_flag equ 08h ;AN000;target current directory saved.
removalble_drv_flag equ 10h ;AN000;
sharing_source_flag equ 20h ;AN000;source shared
sharing_target_flag equ 40h ;AN000;
turn_verify_off_flag equ 80h ;AN000;turn the verify off when exit to dos.
reset_default_s_dir equ 0FBh ;AN000;reset default_s_dir_flag
;*** OPTION_FLAG ***
slash_a equ 01h ;AN000;soft archieve ?
slash_d equ 02h ;AN000;date?
slash_e equ 04h ;AN000;create empty dir?
slash_m equ 08h ;AN000;hard archieve ? (turn off source archieve bit)
slash_p equ 10h ;AN000;prompt?
slash_s equ 20h ;AN000;walk the tree?
slash_v equ 40h ;AN000;verify on?
slash_w equ 80h ;AN000;show "Press any key to begin copying" msg)
reset_slash_a equ 0FEh ;AN000;turn off soft archieve
reset_slash_m equ 0F7h ;AN000;turn off hard archieve
;*** PARM_FLAG ***
first_parm_flag equ 01h ;AN000;first parm entered in input parm
second_parm_flag equ 02h ;AN000;second parm entered.
end_of_parm_flag equ 04h ;AN000;end of parm reached
copy_onto_itself_flag equ 08h ;AN000;copy onto itself flag
cyclic_flag equ 10h ;AN000;cyclic copy flag
inv_time_flag equ 20h ;AN000;invalid time
inv_date_flag equ 40h ;AN000;invalid date
init_error_flag equ 80h ;AN000;critical initialization error. Should abort.
;*** PARM1_FLAG ***
inv_s_path_flag equ 01h ;AN000;invalid source path (path not found)
inv_t_path_flag equ 02h ;AN000;invalid target path
s_file_flag equ 04h ;AN000;source filename entered
t_file_flag equ 08h ;AN000;target filename entered
;general equates
COLON EQU ":" ;AN000;FOLLOWS DRV LTR IN FULL FILESPEC
NUL EQU 0 ;AN000;DELIMITER FOR ASCIIZ STRINGS
SPACE EQU " " ;AN000;TEST FOR DBCS IN 'F D ' MESSAGE
PARAGRAPH EQU 4 ;AN005;TO CONVERT TO/FROM BYTES/PARA.
PARA_BOUND EQU 15 ;AN005;BYTES TO ADD FOR PARA. CALCULAT
FIXD_HD_SIZ EQU 2 ;AN005;PARA COUNT MINIMUM FOR FILE HDR
SYSPRM_EX_MANY EQU 1 ;AN000;TOO MANY OPERANDS ERR FROM PARSE
SYSPRM_MISSING_OP EQU 2 ;AN000;MISSING OPERANDS ERR FROM PARSE
SYSPRM_DUP_SW EQU 3 ;AN004;INVALID SWITCH R-CODE FROM PARSE
F_APPEND EQU 8000H ;AN000; /X status bit in Append
NOT_X_APPEND EQU 0 ;AN000; /X NOT ACTIVE
ACT_APPEND EQU 0 ;AN000;ACTIVE STATUS OF APPEND
D_V_APPEND EQU 0FFH ;AN000;DOS VERSION OF APPEND
PSPFCB1_DRV EQU 5Ch ;AN000;
PSPFCB2_DRV EQU 6Ch ;AN000;
PSPDTA_PARMLEN EQU 80h ;AN000;
PSPDTA_PARRSTR EQU 81h ;AN000;
BASE_OF_ALPHA_DRV EQU 64 ;AN000;1 => A, 2 => B for drive letter
BASE_UPPER_CASE EQU 11011111B ;AN000;"AND"ed will make it to upper case chr
ALPHA_A EQU 'A' ;AN000;
;ALPHA_D EQU 'D' ;moved to XCPYINT.MSG file for translation.
ALPHA_E EQU 'E' ;AN000;
;ALPHA_F EQU 'F' ;moved to XCPYINT.MSG file for translation.
ALPHA_M EQU 'M' ;AN000;
ALPHA_S EQU 'S' ;AN000;
ALPHA_P EQU 'P' ;AN000;
ALPHA_T EQU 'T' ;AN000;
ALPHA_V EQU 'V' ;AN000;
ALPHA_W EQU 'W' ;AN000;
ALPHA_Z EQU 'Z' ;AN000;
A_dot EQU '.' ;AN000;
path_delim equ '\' ;AN000;
drv_delim equ ':' ;AN000;
;**********************************************************************
;DOS_LEVEL EQU 0314h ;VERSION 3.20
;*************************END OF XCOPY.EQU ****************************
|