forked from sebras/buerg
-
Notifications
You must be signed in to change notification settings - Fork 0
/
LUU213.DOC
252 lines (186 loc) · 9.31 KB
/
LUU213.DOC
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
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
- Page 1
LUU - Library Update Utility
Version 2.13 - April 28, 1986
(c) Vernon D. Buerg 1986
LUU Command
-----------
Purpose: To place one or more files into a single library (LBR)
file for archiving, data transmission or back-up.
Format: LUU [d:][path]filename[.LBR] filespec(s) /N /Q /D /nnn
Remarks: The library name and at least one input member file name
must be supplied. The library name may contain a drive,
path names, and a filename with an extension. If the
library extension is omitted, .LBR is assumed.
There may be one or more member file names. Separate each
member name by one blank. Each member name may include a
drive, path names, and wildcard characters in the file
name and extension.
Files larger than 1024 bytes are automatically sQueezed
using the Greenlaw/Huffman algorithm. You may use the /N
option to negate sQueezing. If the squeezed file is larger
than the original file, an extra step is taken to place
the smaller original file into the library. You may use
the /Q option to bypass this step and put the squeezed
version of the file into the library.
The input files may be deleted (after being placed into
the library file) by using the /D option.
If the LBR file does not exist, you are prompted to enter
a number for the size of the library directory. You may
use the /nnn option to supply this number and avoid the
prompt.
The DOS error level is set to 1 if LUU terminates with an
error.
Notes: Written for the IBM PC using DOS 2.0 through DOS 3.1.
For private, personal use. Commercial use prohibited.
Copyright (c) 1985 by Vernon Buerg. All rights reserved.
456 Lakeshire Drive
Daly City, CA 94015
RBBS: 415-994-2944
CompuServe: 70007,1212
LUU duplicates the A(dd) and U(pdate) functions of LU.
When used with LUT and LUE, original file dates are
preserved and recorded.
The advantages of LUU are:
o smaller, so a copy can be kept on the "system" disk
o faster, mucho
o handles paths and wildcards
o retains input file (or member) date/time
o replaces in-place to save disk space
o automatically squeezes files to save disk space
-
LUU - Library Update Utility
Command Options
---------------
/N indicates do Not squeeze the files, place the original
files, as-is, into the library
/Q indicates that the sQueezed version of the files be
placed into the library whether they are larger than
the original version or not
/D indicates that the original files be deleted after
being added to the library
/nnn supplies the number of directory to allocate to a
new library, thus bypassing the prompt. A value of
1 to 255 may be used.
All command options must be entered after any filename
parameters. That is, at the end of the command line.
The defaults result in squeezing any file that is larger than
1024 bytes, and placing the squeezed version of the file into
the library only if it is smaller than the original file.
Examples
--------
o Place all files on drive B which have an extension
of "AQM" into the file called "AQM.LBR":
LUU a:AQM.LBR b:*.AQM
o Place all files on drive B which have a filename
of PCT366 into the file PCT366.LBR and do not sQueeze
them:
LUU PCT366 b:PCT366.* /N
o Place all files from drive B which match the file
specification "AB??XX.???", and all files from the
the directory "PROD" on drive A which have an extension
of "ASC" into the file "SOURCE.LBR" in the directory
called "TEST" on drive C:
LUU c:\test\source.lbr b:ab??xx.* a:\prod\*.asc
o Place all files from the current drive into a new
library called "TEST.LBR", and allocate 32 directory
entries if the library does not exist:
LUU test *.* /32
-
LUU - Library Update Utility
File Formats
------------
An LBR file consists of a directory and one or more
"members". The directory contains from 4 to 256 entries.
Each entry is 32 bytes long and describes a member, if
one exists.
The first directory entry describes the directory
itself. Thus, the number of entries allocated is increased
by one.
All space allocation is in terms of sectors. Each
sector is 128 bytes long. Four directory entries fit
in one sector, so the directory is allocated in multiples
of four.
There are three directory formats recognized by LUU.
They are: 1) old LU, 2) LUPC, and 3) new LU86. When a new
library is created, LUU uses the new LU86 directory format.
If LUU is updating an existing LBR file, it uses the same
format that the file was created with.
Directory format
----------------
0 - File status; 0=active, 254=deleted, 255=free
1 - Member name; filename in FCB format, dir name is blanks
12 - Offset to data in sectors of 128 bytes
14 - Length of member in sectors.
16 - all zero for 'old LU' format
LUPC format extension
---------------------
1 - master directory name is ********DIR
16 - Original member file creation date, MM/DD/YY
24 - Original member file creation time, HH:MM:SS
LU86 Directory Format
---------------------
0 - File status; 0=active, 254=deleted, 255=free
1 - Member name; filename in FCB format, dir name is blanks
12 - Offset to data in sectors of 128 bytes
14 - Length of member in sectors.
16 - CRC word, or zero if Cyclic Redundancy Checking not used
18 - File create date, CP/M format
20 - File create time, DOS format
22 - Date file last updated (replaced), CP/M format
24 - Time file last updated, DOS format
26 - Number of bytes in last sector
27 - reserved/unused/zero
The date and time stamp fields vary in format. LUU uses
the LU86 format when it creates a library. Otherwise, the
format used when the library was created is used.
The member name for the directory entry is all blanks.
This allows for compatibility checking between versions
of LU and LUU.
-
Page 4
LUU - Library Update Utility
Version History
---------------
1.2, July 30, 1984.
1.3, August 6, 1984.
- Ignore CRC bytes in directory.
- Update in place if replacement member is same size
or smaller, of is last member in directory.
1.4, August 13, 1984.
- recognize new CPM date/time stamp format
1.5, December 21, 1984,
- allow multiple member names to be specified
1.6, January 23, 1984,
- default to LU86 directory format
1.65, April 13, 1985,
- set ERRORLEVEL to 1 if any errors
- use DOS functions for displaying messages to allow
for redirection, etc.
1.66, May 14, 1985,
- correct CP/M dates from LU86 formats
1.67, June 17, 1985,
- correct MAJOR problem "Updating" the last file,
would result in damage to other files.
2.00, June 26, 1985
- add CRC for LBR files
- add CRC for directory
- re-use deleted entries
2.05, July 13, 1985
- automatically sQueeze files larger than 1024 bytes
- add /N option to suppress sQueezing
2.08, December 29, 1985
- add the /nnn option to supply the number of directory
entries for new library files
- add /D option to delete input files
- use smaller of original file or squeezed file
- add /Q option to use sQueezed file regardless of size
- correct directory update problem if "File not found"
error occurs
- implement CRC for squeezed files
2.09, January 27, 1986
- correct losing directory if run out of directory entries,
or any other error
2.13, April 28, 1986
- correct replacement of members that were automatically
squeezed