summaryrefslogtreecommitdiff
path: root/v4.0/src/CMD/RECOVER/RECDATA.INC
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/CMD/RECOVER/RECDATA.INC')
-rw-r--r--v4.0/src/CMD/RECOVER/RECDATA.INC168
1 files changed, 168 insertions, 0 deletions
diff --git a/v4.0/src/CMD/RECOVER/RECDATA.INC b/v4.0/src/CMD/RECOVER/RECDATA.INC
new file mode 100644
index 0000000..4685790
--- /dev/null
+++ b/v4.0/src/CMD/RECOVER/RECDATA.INC
@@ -0,0 +1,168 @@
1
2 data segment PUBLIC para 'DATA' ;AC000;bgb
3;*****************************************************************************
4; Data Area
5;*****************************************************************************
6;
7lastchar dw 0 ;an024;bgb
8lastbs dw 0 ;an024;bgb
9fndback dw 0 ;point to where backslash found
10old_subdir db 64 dup(0) ;current sub directory
11new_subdir db 64 dup(0) ;new sub directory
12paras_per_64k dw 0
13paras_per_fat dw 0
14secs_per_64k dw 0
15sec_count dw 0
16sixteen dw 16 ; mul ax for 32 bytes / fat entry
17exit_sw dw ? ; loop exit switch ;AN000;bgb
18exit_sw2 dw ? ; loop exit switch ;AN000;bgb
19old_drive db 0 ;original drive to restore to ;an008;bgb
20drvlet db 'A: ',13,10,13,10,0 ; ;AN000;
21rec_num dw ? ; ;AN000;
22x_value_lo dw ? ; ;AN000;
23x_value_hi dw ? ; ;AN000;
24y_value_lo dw ? ; ;AN000;
25y_value_hi dw ? ; ;AN000;
26DRVLET1 db "A",0
27;
28 HEADER DB "Vers 2.00"
29;-----------------------------------------------------------------------;
30 Prompted db 0 ; TRUE => prompt has already been done
31 hardch dd ? ; saved int 24 vector
32 the_root db 0 ; root directory flag
33 fudge db 0 ; directory changed flag
34 user_drive db 0
35 drive db 0
36 dirchar db "/",0
37 userdir db "/",0
38 db (dirstrlen) dup(0)
39 fname_buffer db 128 dup(0)
40
41found db no
42done db no
43PSP_Segment dw 0
44ExitStatus db 0 ;Errorlevel code ;AN000;
45
46 ;
47BPB_Buffer A_DeviceParameters <> ; ;AN000;
48
49TranSrc db "A:\",0 ; ;AN000;
50
51Data_Start_Low dw ? ; ;AN000;
52Data_Start_High dw ? ; ;AN000;
53
54INT_23_Old_Off dw ? ; ;AN000;
55INT_23_Old_Seg dw ? ; ;AN000;
56INT_24_Old_Off dw ? ; ;AN000;
57INT_24_Old_Seg dw ? ; ;AN000;
58
59
60Command_Line_Buffer db 128 dup(0) ; ;AN000;
61Fatal_Error db 0 ; ;AN000;
62
63Command_Line db NO ; ;AN000;
64
65;These should stay together ; ;an022;bgb
66; --------------------------------------- ; ; ;an022;bgb
67ifdef fsexec ;an022;bgb
68 FS_String_Buffer db 13 dup(" ") ; ;AN000; ;an022;bgb
69 FS_String_End db "REC.EXE",0 ; ;AN000; ;an022;bgb
70;---------------------------------------- ; ;an022;bgb
71 FS_Not_Fat db 0 ; ;AN000;;an022;bgb
72FAT12_String db "FAT12 " ;
73FAT16_String db "FAT16 " ;
74
75Media_ID_Buffer Media_ID <> ; ;AN000;
76endif ;an022;bgb
77
78Append db 0 ;
79
80
81dirent db 'FILE0000REC'
82 db 21 dup (00)
83
84fcb_copy db 32 dup (?)
85
86filcnt dw 0000
87fatcnt db 00
88fatnum db 00
89fatsiz dw 0000
90firfat dw 0000
91fatptr dw 0000
92secall dw 0000 ; sectors per cluster
93target dw 0000
94maxent dw 0000
95firrec dw 0000
96firdir dw 0000
97bytes_per_sector dw 0000
98secsiz dw 0000
99siztmp dw 0000
100 dw 0000
101filsiz dw 0000
102 dw 0000 ;carry noted here - 2 bytes after filsiz
103MaxClus DW 0
104lastfat dw 0000
105;
106dbcs_sw db 0 ;zero if not dbcs - one if dbcs found ;an024;bgb
107DBCS_Vector db 0
108DBCS_Vector_Off dw 0
109DBCS_Vector_Seg dw 0
110Read_Write_Relative Relative_Sector_Buffer <>
111Drive_Letter_Msg db "A:",0 ;Drive for exec fail message
112
113ifdef fsexec ;an022;bgb
114;Exec_Block Exec_Block_Parms <> ;an022;bgb
115;EXEC_Path db 66 dup(0) ;an022;bgb
116;These next two should stay together
117; ---------------------------------------
118;Path_String db "PATH=" ; ;an022;bgb
119;Len_Path_String equ 5 ; length of path= string ;AN000;bgb ;an022;bgb
120endif ;an022;bgb
121 ;
122;----------------------------------------
123driveLetter db "X",":",0
124
125
126 ; ; ;
127;----------------------------------------
128
129;Path_SI dw 0
130;Env_DS dw 0
131table dw offset dg:fattbl ;AC000;bgb
132data ends
133
134
135;*****************************************************************************
136; LAST DATA AREA
137; this data area writes over ram, so leave it at the very end of the pgm.
138;*****************************************************************************
139lastseg segment PUBLIC para 'last' ;AC000;bgb
140 assume ds:dg
141fattbl db 0 ;AC000;bgb
142lastseg ends ;AN000;bgb
143
144;
145data segment public para 'DATA' ;AC000;bgb
146;******************************************************************************
147; Public Data
148;******************************************************************************
149 public header, prompted, hardch, the_root, fudge, user_drive, drive, dirchar ;AN000;bgb
150 public userdir, fname_buffer, found, done, driveletter, psp_segment, exitstatus ;AN000;bgb
151 public drvlet, bpb_buffer, transrc, data_start_low, data_start_high, ;AN000;bgb
152 public int_23_old_off, int_23_old_seg, int_24_old_off, int_24_old_seg, append ;AN000;bgb
153 public command_line_buffer, command_line_length, fatal_error, command_line, ;AN000;bgb
154ifdef fsexec ;an022;bgb
155 public fs_string_buffer, fs_string_end, len_fs_string_end, fs_not_fat, ;an022;bgb;AN000;bgb
156 public fat12_string, fat16_string, len_fs_id_string, media_id_buffer, ;an022;bgb;AN000;bgb
157 public exec_block, exec_path, path_string ;AN000;bgb ;an022;bgb
158 public len_path_string ;an022;bgb;AN011;bgb
159 endif ;an022;bgb
160 public dirent, fcb_copy, filcnt, fatcnt, fatnum, fatsiz, firfat, fatptr ;AN000;bgb
161 public secall, target, maxent, firrec, firdir, secsiz, siztmp, filsiz, maxclus ;AN000;bgb
162 public lastfat, table, fattbl, dbcs_vector, dbcs_vector_off, dbcs_vector_seg ;AN000;bgb
163 public read_write_relative, drive_letter_msg ;AN000;bgb ;an022;bgb
164 public drvlet1, rec_num, x_value_lo, x_value_hi, y_value_lo, y_value_hi
165 public bytes_per_sector, exit_sw, exit_sw2, paras_per_fat, secs_per_64k
166 public sec_count, paras_per_64k
167data ends ;put this 1st so that the recmsg works
168 \ No newline at end of file