******************************************************************************
   (C) Copyright 2003-2004 Curtis Systems Software P.C. All rights reserved.
               (last update: 2004 March  15)
******************************************************************************
CSSDIR version 3.01 GA release. 
                
Table of Contents
(A.) What is CSSDIR section:
(B.) Installation section:
(C.) Examples and CSSDIR versus Dir Section:
(D.) 25 reasons to purchase CSSDIR section:
(E.) Brief    Options help section:
(F.) Detailed Options help section:
(G.) Options Summary Alpha Sorted Table Section:
(H.) Detailed CSSDIR license feature comparisons section:
(I.) Error/warning/information message codes section:
(J.) CSSDIR cfg file and Customization section:
(K.) Other Utilities section:
(L.) Hints, tips, issues and caveats section:
(M.) Definitions/references section:
(N.) Terms and Agreement Section:
(O.) Acknowledgments section:
(P.) Release Revisions section:
******************************************************************************

(A.) What is CSSDIR section:
****************************
CSSDIR is a significant directory/file analyzing and file searching program 
developed and copyrighted (C) 2003-2004 software, documentation and 
nomenclature by Curtis Systems Software P.C., All rights reserved [see (N.) 
Terms and Agreement section:]. It stands for (C)urtis (S)ystem (S)oftware 
(DIR)ectory program [visit our website at www.curtisSystemsSoftware.com]. We 
Know of NO other more versatile, flexible or powerful directory program for 
the OS/2 or eComStation (eCS) operating systems. CSSDIR supports the commonly 
used OS/2 and eComStation included cmd.exe's dir options such as /s, /a, /o, 
etc. and a WHOLE lot more.
 
Some of CSSDIR powerFULL product Features include:

Search for files by file size and/or EA size or range of sizes, user 
specified search string(s), and EVEN by DATE or range of dates, [includes many 
shortcuts i.e. for files accessed today use: 'cssdir /Srd:Today' or 'cssdir 
/Srd:.' or for the  Last n days: 'cssdir /Srd:-n'].

Find duplicate files over multiple drives or network shares and EVEN
under DIFFERENT file names, sorted by ascending/descending sizes.

Find unique files amongst two or more paths, Great for file tree compares!

Compute CRCs on a file's data and even EAs integrated with other
important file information (Great for baseline comparisons).

Produce baseline snapshots to compare differences in determining exactly
what files have changed including file attributes and EVEN EAs.

Produce detailed multiple sorted listings over multiple drives including
network drives and UNC in one invocation and pass (saving you time).

Ability to selectively Exclude files (single files, groups of files or whole 
directories of files). The exclusion can be based on file prefix, file 
extension (i.e. suffixes like .zip, .rar, .tmp, etc), or directory name. 
Multiple exclude sets can be defined.

Ability to arrange the layout of all file fields and control whether they are 
displayed or NOT easily!

All options (that make sense) can be combined to limit or increase
the files to be included or excluded in the user request(s). POWERFUL!
User controls how much or how little information is displayed, as well
as customize their own private shortcuts for later use! And much more.
Shareware and Pro versions. Quantity discounts available.

Professional version includes: reading filespecs out of files, reading
exclude suffixes and prefixes, out of files, no limit on files processed, no 
limit on multiple reports in one invocation, capable of being monitored by 
external utility 'cssmon' EVEN over a LAN, and access to the snapshot 
(baseline) compare utility (cssddiff).
******************************************************************************

(B.) Installation section:
**************************
1.) read the (N.) Terms and Agreement Section:
2.) If you accept these terms and Agreement then skip to step 3
    otherwise remove CSSDIR and its documentation from your computer(s).
3.) Create a directory called CSSDIR.
4.) cd to this newly created directory CSSDIR.
5.) Unzip the CSSDIR zip file you received into this directory
6.) Adjust config.sys path statement to have CSSDIR in its path, and don't 
forget to put the drive letter in there also i.e. X:\CSSDIR where X is drive 
you created \CSSDIR on. Performance may be improved by placing X:\CSSDIR as 
the first item in the path statement.

6a.) If you do not want to change your path, you can always give the full path 
 or enough of the path so OS/2 or eComStation can find the CSSDIR.exe. 
i.e X:\CSSDIR\CSSDIR.exe. (Where X:\CSSDIR is the drive/dir you unzipped the 
CSSDIR zip file into.)

7.) If you chose to update your config.sys path and also wish to simply enter 
'cssdir' without being in the CSSDIR installed directory, Reboot; This will 
update the path and thereafter OS/2 or eComStation will be able to find 
'cssdir.exe' whenever you enter 'cssdir' or 'cssdir.exe'.

8.) Copy the cssdir.key file you received into the CSSDIR directory and 
register the software via 'cssdir /Register', if you do not register you will 
only be able try a limited but still quite powerful subset of CSSDIR features 
on a "trial" basis legally for up to a period of 30 days without purchasing a 
license [See (N.) Terms and Agreement section:].

9.) if you are running a 1.xx previous version, you may delete the NOW non 
used cssutil.dll.

9a) after you become familiar with cssdir you may want to adjust some symbolic 
codes that are specific to your system, such as /$cdDrv$/, /$cssdirSkipDrvs$/, 
etc. in the cssdir.cfg file, especially the ones in the BASE_CUSTOM_SECTION.

10.) Enjoy CSSDIR; Also see FAQ at www.curtisSystemsSoftware.com.
*****************************************************************************

(C.) Examples and CSSDIR versus Dir Section:
********************************************
See examples file examples.txt and also see file cssVsdir.txt file for 
comparisons of CSSDIR versus the cmd.exe's DIR command. Trying out some of the 
examples while referencing this document is probably the fastest way to 
utilize CSSDIR's flexibility and power.

(D.) 25 reasons to purchase CSSDIR section:
*******************************************
Cmd.exe's dir supported options are very similar but CSSDIR allows a much more 
expansive and enhanced set of options. The following document describes the 
Professional version of CSSDIR, a limited shareware and less expensive version,
 but still very powerful is also available, [see (H.) Detailed CSSDIR license 
feature comparisons section:] Some significant enhancements include: 

1.) All directories requested CAN be treated as a group (via the /Lxpo: 
option) and is way more POWERFUL than the limited cmd.exe dir's sub directory 
by sub directory sorting basis and listing. Try 'cssdir /Lxpo:ax /oS dir1 
dir2', where dir1 and dir2 are two different valid directories on your system 
-- then notice that CSSDIR lists both directories combined and then sorted 
based on the ascending file size, subdirectories can also be included. We have 
tested data sets that have included over a 2.5 million files over multiple 
machines over multiple drives which included FAT, HPFS, CDWFS, LAN, UNC 
referenced, and JFS under eComStation 1.03. This sorting capability over 
multiple directories ALONE is reason enough to purchase this program. [see 
options /oS, /s, and /Lxpo:]

2.) Date range of files to include, even multiple date ranges on multiple 
separately restricted directories [see option /Srd: and /Dir:]. To find all 
non hidden and system files that have a timestamp of today's date on the 
complete f drive sorted by ascending date/time Use: 'cssdir /Lxpo:ax /s f:\ 
/Srd:. /oD' (less the two enclosing '). If you do NOT want to include system 
and hidden files then use 'cssdir /s f:\ /Srd:Today /oD /a-H-S' or 'cssdir /s 
f:\ /Srd:. /oD /a-H-S*A*D*R'.

3.) Limit by a file size range, and on multiple separately restricted 
directories [see option /Srd: and /Dir:]. If your OS/2 or eComStation boot 
drive is f: then try 'cssdir f:\os2\system/s;f:\ /Srs:70000,$' this will list 
all the files that have a size of 70,000 bytes or greater and exist in the 
f:\os2\system and its subdirectories and any stored in the f:\ directory.

4.) Limit by EA size range, and on multiple separately restricted directories 
[see option /Srz: and /Dir:] to find only files with EA sizes greater than 
zero use 'cssdir /Srz:1,$'.

5.) Significant sorting enhancements to dir's /o option, CSSDIR adds sorting 
on relative directories (via /Lxpo:) on Full file specification (via /Lxpo:), 
and sorting on a file's Ea Size ALL capable over multiple drives and 
filesystems. [see option /o and /Lxpo:]. Multiple user requests on one 
invocation can all be combined in various ways by setting the /Lxpo: option 
appropriately.
For example 'cssdir /Lxpo:ax c:\ d:\ /s /o-s' will combine all files found on 
drives c and d and sort by descending file size. Whereas 'cssdir f:\os2\ f:\ 
g:\' will limit the ordering within each of the three directories. (/Lxpo: is 
an extremely powerful control option, it controls the primary ordering of 
file/dir entries while it's effects can be seen within a request that spans 
multiple directories and/or over multiple requests for the current CSSDIR 
invocation.)

6.) Flexible multiple listings, perhaps ordering (sorting) by different fields,
 more or less information to be displayed ALL in one pass over the file 
system(s), in many cases can be a huge convenience and time saver. The 
multiple listings in one invocation can be EVEN saved to separate files. [see 
option /List: and /Of:, a must for POWER or advanced users!]

7.) Comparing two or more directories and listing the unique files amongst the 
group. This option also allows the user to control whether more than just a 
unique relative pathname is in fact unique based on the user modifiable 
definition of unique. The user can include/exclude a file's date timestamp, 
filesize, filecrc, Easize, Eacrc and even individual file attributes in this 
determination of uniqueness! [See /Lxuf: and /Lxufao:] If you have two 
directories you wish to find unique files amongst them but ignore the date 
timestamps in the compare try 'cssdir dirA dirB /Lxuf:-D /Fcrc:y /Lfc' and at 
other times you may need to also ignore the archive and readonly attribute bit,
 try 'cssdir dirA dirB /Lxuf:-D /Fcrc:y /Lfc /Lxufao:-a-r' or 'cssdir dirA 
dirB /Lxuf:-DA /Fcrc:y /Lfc /Lxufao:-a-r'. Also see the convenient symbolic 
defintions: /$ufOpt$/ in cssdir.cfg.

8.) Computation and listing files data CRC values which can be used for many 
different other test scenarios. [See /Fcrc:]

9.) Computation and listing of a Files EA CRC Value!!!. CSS knows of no other 
program which does this important and sometimes very critical checkout of EA 
values.  [See /Ecrc:]

10.) Exclude files in a listing based on suffixes, which can include full file 
specifications and one can also read a group of such files from a exclude 
file. [see /Xr1: and /Xr1:@ ] Again, You can't do this with cmd.exe's dir! You 
can also exclude entire directory trees, or files that begin with a certain 
prefix, use /Xr1:/prefix/ or /Xr1:/dirPrefix/ followed by a prefix or 
directory name i.e /Xr1:/dirPrefix/f:\os2\, this also applies to the /Xr2: 
option (which is used to exclude files in computing their CRCs on if /Fcrc:y 
is active).

11.) Sorting multiple groups of file systems sources including UNC names by 
relative pathnames. [See /o and /Lxpo:ar]. When using this in conjunction with 
having '/Lfn2' and '/Lff1' active can be a very fast way of deciphering 
commonality or differences amongst similar directory trees over multiple 
drives, directories, shares and networks. Again, You ain't doing with with 
cmd.exe's dir!

12.) Extremely powerful duplicate files detection function.  It can work 
across multiple drives and can many times detect duplicates files even though 
the files are named differently! [see /Lxpo:*dups-asc and /Lxpo:*dups-des].
Getting rid of duplicate files might speed up your backups, processing, etc.  
Also see convenient symbolic codes /$dups$/ and /$noCrcDups$/ in cssdir.cfg 
for super convenient options setup!

13.) Exclude files to do CRC computations on by suffixes, prefixes and 
directory names, which can include full file specifications, and one can also 
read a group of such files from an exclude CRC file. [see  /Xr2: and /Xr2:@]

14.) Limit doing CRC computations on a specific range of file sizes. [see 
/Src:]

15.) File system snapshots which can be analyzed by the optional tool cssddiff 
which will list all changes between snapshots, With the exception of a handful 
of files which might be locked down, this snapshotting can be done on a live 
system. (It is possible that some files could be in a state of flux, and a 
subsequent invocation could immediately have different CRCs with new and/or 
deleted files - but this should go without saying, the other alternative is to 
boot from another partition and/or off a cd and then invoke CSSDIR.)

16.) Powerful symbolic user definable strings which can make use of CSSDIR 
more personal and have more easily remembered 'canned' invocable settings. 
[see CSSDIR.cfg and environment variable cssdirCfg], You can also reference 
all of the current session's environment variables too.
Also see (J.) CSSDIR cfg file and Customization section:

17.) Has a corresponding environment variable to cmd.exe's dir's 'dircmd' for 
user customized defaults settings. [See cssdirDefArgs environment variable as 
well as a more convenient method to set your own defaults within your CSSDIR 
cfg file by adjusting the symbolic definition named: /$cssdirDefArgs$/.]

18.) Optional settings on just what fields should be displayed and in 
different formats and in different layouts. Very powerful and useful. To get a 
familar layout closely resembling dir's try 'cssdir /$loDir$/' or 'cssdir 
/$loDira$/. 

19.) handy disk information total summary option of totals information. [See 
/Lrdi] Try 'cssdir /$AllDrvsSum1$/' OR 'cssdir /$LclDrvsSum1$/'.

20.) Multiple wildcards over all requested or just some specific directories; 
much more concise then cmd.exe's dir approach. For instance try 'cssdir dir1 
dir2 dir3 dirn /Wc:*.c;*.h;*.txt;*.hpp' ... this would search for all files 
with the following extensions '*.c' '*.h' '*.txt' '*.hpp' over dir1, dir2, 
dir3, dirn, and you can also determine exactly which wildcard group the 
filespec was first to match or where the duplicate matched filespecs occurred 
in finding a file. [see /Foo: and /Lanu:]

21.) Because there's no other known comparable directory program for the OS/2 
and/or eComStation operating systems with nearly 100 user selectable options 
and if you figure in overrides its well over 100 user selectable options (some 
with multiple settings) and of which you can package or 'CAN' your commonly 
used perhaps lengthy option settings into a single reusable friendly symbolic 
definition in your CSSDIR cfg file (usually named CSSDIR.cfg).

22.) Further filter files by matching text [see /Sch: and /Scho:]. During 
filtering and gathering files CSSDIR also searches the found file for the text 
you requested with the /Sch: option and then keeps or discards based on if the 
requested text string(s) were found.

23.) Output can be redirected directly into the zip.exe -@ option to quickly
back up files or a separate step with very limited (if any) manual editing 
which can then be redirected into zip.exe. With multiple reports via /List: 
and /Of: and its /M suboption, you can have your detailed report and get a 
bare filespecs to route for zip or other archive utility all in 1 invocation 
easily! Or you could dir dir and dir some more! Which way did you dir sir?

24.) Multiple listings can be assigned with user customized labels. [See 
/Lrtbeg: and /Lrtend:, for list record title begin and list record title end], 
Can be handy if you wish to parse (perhaps using REXX) the output for other 
purposes.

25.) There are many things that CSSDIR can do that are either impossible or 
very difficult to do without CSSDIR or require a half dozen other tools and 
perhaps require repeatedly hunting and then poking at a GUI-only tool; CSSDIR 
is a TREMENDOUS tool for system checkout and base lining. Private consulting 
is available. 

For more information visit: www.curtisSystemsSoftware.com. 
******************************************************************************

(E.) Brief    Options help section:
***********************************
Below lists the basic online help which is reproducible for CSSDIR, by 
invoking 'cssdir /h' or 'cssdir /?'. For more eXtended online help use '/hx' 
or '/?x'.

[start inserted cssdir /h follows]
$Help for cssdir 3.0 Copyright (c) 2003-04 Curtis Systems Software P.C.
usage follows: cssdir [options]

 option   default    decription
 /hx                display eXtended help
 /h                 display help
 /?x                alternative way to display eXtended help
 /?                 alternative way to display help
 -hx                alternative way to display eXtended help
 -h                 alternative way to display help
 /Register          registers cssdir; i.e. 'cssdir /Register'
  
 **** /Dir: and DORA* (/Dir: OverRideAble options) ****
 /Dir:   [.]        directories
 /a      []         attr: /a /a[:][ADSHR-*$]
 /s      [CUR]      subdir NO,CUR,ALL /s[nn][X(h|s|hs|sh)] (nn=maxDepth 2-99) 
 /Srd:   [ALL]      range of dates: -n,all,curNweek,curNmonth (N = 1 to 13)
 /Srs:   [ALL]      range of file Size: all, $=no high limit i.e. /Srs:1000,$
 /Srz:   [ALL]      range of Ea   Size: all, $=no high limit i.e. /Srz:1,$
 /Wc:    []         wildcards

 **** NORA - non OverRideAble options (1 setting per CSSDIR invocation) ****
 /00                zero normal output options;
 /b      [0]        0=off 1=on; /b or /b1= /Bf1; with /s its /Bf3
 /BD                initialize cssdir options to out-of-the-Box Defaults
 /Bf     [0]        Bare /Lff fld
 /Ce     [0]        Combine stderr to stdout; useful for 'more' 1,2,3
 /Daws:  [0]        weekStart day  0=Mon,1=Tue,2=Wed,3=Thu,4=Fri,5=Sat,6=Sun
 /Dumpo: [N]        dump options settings Y,N,2,A=all S=A+sort B=brief ..
 /Ecrc:  [N]        compute Ea CRC  Y,N
 /f      [0]        0=off 1=on; /f or /f1 is alias for /Bf3
 /Fcrc:  [N]        compute file CRC Y,N
 /Foo:   [0]        foundOutputOption  1=found and totfound 2=totfound only
 /Laifs: [L]        List/Abort if invalid filespec/dirspec(s)  A,L,Y
 /Lamcd: [A]        List/Abort mixedCase dup filespecs found   A,  Y
 /Lanf:  [L]        List/Abort if no (qualified) files found   A,L,Y,0
 /Lanu:  [L]        List/abort non unique file names found     A,L,Y,0
 /Lasfw: [L]        List/abort search file warning             A,L,S,T,Y,Z,0  
 /Lasmw: [L]        List/abort /Sch: temp memory exceeded warning A,I,L,S     
 /Mf:    [-X-R-2]   Miscellaneous Flags /Mf:[BCZYXR2-]'/Mf:'= /Mf:BCZYXR2     
 /Nr:    [0]        noReadAccess:1=prelist 2=exc 3=2 silent 4=inc 5=4 silent
 /Of:    [stdout:]  outFile[/ANOMTY] A=append N=new O=overwrite M=mult T=time 
 /Pfof:  [stdout:]  PfoutFile[/ANOMTY] A=append N=new O=overwrite T=time      
 /Pf     [0]        PreviewFile rec 1=All 2=1 noAttr# 3=#fspec 4=fspec ...    
 /Pi     [0]        ProcessInfo rec 1=console 2=stderr 3=*stderr 4=stdout ... 
 /Pt     [0]        ProcessTime rec 1=tot 2=gather 3=1+2                      
 /Py:    [*]        priority *=noChange 0=lo 40=hi 0-31 idle 32-40RegClass
 /Sch:   []         searchString /Cstr /Istr both=+ either=$
 /Scho:  [1]        SearchString hits 1=line summary 2=1 + details
 /Soo:   [1]        SearchOutputOption 1=showNondefault 2=showMult 3=always
 /Src:   [ALL]      file Size Range to compute CRCs
 /Tdir:  []         Temp directory; Used with /Ecrc:y
 /Tis    [0]        curTimeStamp   0=off 1=timeStamp
 /Ve:    [2]        verbose level 0=off 1=basic 2=SYM translation 3=DefArgs ..
 /Vn:    [1]        display version 0=off 1=basic 2=all
 /Xr1:   []         eXclude files with Suffixes/[/prefix/ ...] ...
 /Xr2:   []         eXclude files with Suffixes/[/prefix/] for computing CRCs 

 **** /List: and LORA* (/List: OverRideAble options) ****
 /List:  [/*]       list of orders
          ** /List: displayable field (Lf) options **
          (/Lxlo: ='master' on/off switch of Lf options, see below)
 /Lfa    [5]        Attribute        1=t----z 2=t-d---z 3=dir 4=txz 5=*z      
 /Lfb    [0]        eaCrc            
 /Lfc    [0]        fileCrc          
 /Lfd    [1]        Date             1=mm-dd-yy; 2=yyyy-mm-dd 4=yyyymmdd      
 /Lff    [5]        FileSpec         1=relFSpec 2=relReqPath 3=fullSpec       
 /Lfh    [2]        hintString       format of hintString 4=[DCC(+|-)SHC,DH]  
 /Lfi    [0]        Indent           1=4spaces 2=8sp 3=12sp 4=16sp ... 9=36sp 
 /Lfl    [0]        dir Level        1=level 2=RelativeLevel 3=1+2      
 /Lfm    [1]        dir flag         1=trailing \    
 /Lfn    [0]        fileName         1=name.ext 2=1 format 3=1/ 4=2/  ...     
 /Lfp    [0]        Sch Cnt          
 /Lfq    [2]        space shim       0=off 1=1space 2=2space ...9=9space
 /Lfr    [0]        Reference Num    1= norm 2=1+; 3=1+, 4=2+, 5=1b62 6=2b62  
 /Lfs    [3]        fileSize         1=with <DIR>; 2=numeric; 3=1+, 4=2+,     
 /Lft    [1]        Time             1=hh:mm*  ; 2=hh:mm:ss  ;
 /Lfu    [0]        Unique file      1=on
 /Lfx    [0]        number entry     1=8digits 2=7dig 3=6dig 4=5dig 5=4dig 6= 
 /Lfz    [0]        EaSize           1=regular; 2=1+,
          ** /List: displayable record (Lr) options **
 /Lrab   [0]        ArchiveBitSet    
 /Lrcb   [0]        AllClearBits     
 /Lrdi   [0]        Drive info       1=FS 2=US 3=T 4=1+2+3 5=TotOnly 6=All .. 
 /Lref   [0]        non0 EasizeFiles 
 /Lrgt   [2]        GrandTotal       0=off 1=as needed 2=always               
 /Lrhb   [0]        HiddenBitSet     
 /Lrhe   [0]        hiddenSysEntries 1=dirs 2=all 
 /Lrlh   [0]        ListingHead      1=head 2=tail 3=both
 /Lrll   [0]        listingLabel     1=head 2=tail 3=both
 /Lrlp   [0]        ListOptionProc   1=head 2=tail 3=both
 /Lrlt   [0]        /List: ProcTime for the cur list entry
 /Lrms   [0]        warn/err msgs    1=non zero 2=always (also in gt>/GT>)    
 /Lrnd   [0]        NumDirectories   
 /Lrne   [0]        NumEntries       
 /Lrnf   [0]        NumFiles         
 /Lrns   [0]        numEntriesSrched 1=filesB4Sch 2=1Always 3=bytes 4=3Always 
 /Lrrb   [0]        ReadonlyBitSet   
 /Lrrs   [3]        Request summary  1=Lab+details 2=details+tot 3=1+2 4=tot  
 /Lrsb   [0]        SystemBitSet     
 /Lrse   [0]        SumEaSizes 
 /Lrsf   [0]        SumFileSizes     
 /Lrsl   [0]        shorthandList    ; list codes for basePath of dirSpec     
 /Lrtbeg:[]         listTitle        ; for multiple lines; #=cr/lf
 /Lrtend:[]         ending listTitle ; for multiple lines; #=cr/lf
 /Lrtr   [0]        hidSysTrEntries 1=dirs 2=all 
 /Lrts   [0]        TotalSizes       ; filelengths + eaSizes
 /Lrzz   [0]        zzDirs           1=listTotal 2=1+ details                 
          ** /List: other (Lx) options **
 /Lxcs:  [1]        /Lr commas       0=no commas  1=commas                    
 /Lxkt:  [0]        K trip pt        0=regular  1=dir like                    
 /Lxlo:  [QIXDTHAZBSCUPNLRFM] Lf layout  /Lxlo:[ABCDFHILMNPQRSTUXZ]
 /Lxmf:  []         Lora miscFlags   [123456789CDFHINPQRSTWYZ]      ...       
 /Lxo:   [GN]       /Lxo: is an alias for '/o';  see /o
 /Lxpo:  [N]        PrimaryOrder: /Lxpo:[N|AR|DR|NX|AX|DX|AF|DF|*OFF|...]     
 /Lxrst: [0]        RequestSumType; 0=dir?avail/request 1=reqType summary     
 /Lxuf:  [*OFF]     UniqFile /Lxuf:[KDSCZBA-] '/Lxuf:' = /Lxuf:KDSCZBA
 /Lxufao:[]         UniqFile attrib /Lxufao:[ADSHR-]                  
 /o      [GN]       Order:/o[:][GNEDSZRFJP-]                           

 **** Environment variables of interest: ****
   cssdirTmp    ;used for scratch space for option /Ecrc:y if /Tdir: isn't set
   cssdirDefArgs;used for your default options preferences
   cssdirCfg    ;used for your powerful symbolic user definable strings
   cssdirMem    ;used for general memory Limit in MegaBytes
   cssdirSchMem ;used for /Sch:   memory Limit in MegaBytes
   cssdirSymProcessing; '=Show' to show Symbolic processing

 **** default /Lxlo:QIXDTHAZBSCUPNLRFM (Layout of horizontal fields)  ****
desc:  sp ind ### dat tim  hs att esz ecr siz fcr  uq sch  fn  dl  rn fil '\'
 opt: Lfq Lfi Lfx Lfd Lft Lfh Lfa Lfz Lfb Lfs Lfc Lfu Lfp Lfn Lfl Lfr Lff Lfm
sets:  10  10  7   6   3   8   6   5   2   5   2   2   2   7   4   8   7   2

** Visit us and purchase at www.curtisSystemsSoftware.com **
 Current registered license=NONE. For use beyond the 30 days trial period of 
 this software, register it or you must discontinue using it. Read the 
 enclosed terms and agreement before using and/or continuing to use. For more 
 powerful versions (paid shareware version and PRO versions), Download and 
 purchase from the above website; Quantity discounts available. Copyright (c) 
 2003-04 Curtis Systems Software P.C. All Rights Reserved.

[end inserted cssdir /h]
******************************************************************************
 
(F.) Detailed Options help section:
***********************************
The following describes in detail all of the options available when invoking 
the CSSDIR program. DORA* stands for a global option that is 
(O)ver(R)ide(A)ble within the context of the /Dir: option. To use DORA* 
options (in a overrideable way) one must NOW (starting in version 3.0) 
explicitly use /Dir:. They include /a /s /Srd: /Srs: /Srz: /Wc:. LORA* is 
similar to DORA* but applies to the /List: option. LORA* options include: /Lfa 
/Lfb /Lfc /Lfd /Lff /Lfh /Lfi /Lfl /Lfm /Lfn /Lfp /Lfq /Lfr /Lfs /Lft /Lfu 
/Lfx /Lfz /Lrab /Lrcb /Lrdi /Lref /Lrgt /Lrhb /Lrhe /Lrlh /Lrll /Lrlp /Lrlt 
/Lrms /Lrnd /Lrne /Lrnf /Lrns /Lrrb /Lrrs /Lrsb /Lrse /Lrsf /Lrsl /Lrtbeg: 
/Lrtend: /Lrtr /Lrts /Lrzz /Lxcs: /Lxkt: /Lxlo: /Lxmf: /Lxo: /Lxpo: /Lxrst: 
/Lxuf: /Lxufao: and /o.

A user can also indirectly overide /Lff using /b /f /Bf option. Generally this 
overriding capability is not important unless you wish to have multiple 
listings generated with only invoking CSSDIR once, then it can be extremely 
powerful and on large data sets much much faster. Multiple listing reports in 
one pass (or CSSDIR invocation) also have the advantage of consistent data 
sets that might otherwise change between invocations on a live working system. 
/List: option is really useful for the "POWER" and/or advanced users, 
especially system administrators and developers. 
Note: in the following individual option descriptions the format follows: 
first the option name is listed followed by [in brackets] its default setting 
and then a lengthy description. Also note the option themselves are case 
sensitive, you will get an error if you try to use /LFA instead of /Lfa. Most 
options start with a leading uppercase letter and are followed by all 
lowercase letter(s) and perhaps a colon. There are a few exceptions to this /a 
/s /o /b /f and perhaps a few others (that may be added in the future). 

option   default    description
/hx                display eXtended help
/h                 display help
If '/h' is specified anywhere on the command line, a brief or reference type 
help is displayed for CSSDIR and all other parsing of options if any are 
ignored. The significant of anywhere on the command line is so the user can 
easily adjust or recover after querying help by quickly and simply removing 
the trailing /h from the command line. Tip: you may wish to use the included 
cssdirm.cmd rexx script to pipe any of your CSSDIR invocations through the 
OS/2 more.com or replace with a more powerful paging program. It can be handy 
to view the online CSSDIR reference style help by issuing 'cssdirm /h'. TIP: 
capture the current version of help with 'cssdir /h > cssdirH' or for extended 
help use 'cssdir /hx > cssdirHX' and then use your favorite editor to view 
either cssdirH or cssdirHX.

/?x                same as /hx and -hx
/?                 same as /h  and -h

/Register          registers cssdir; i.e. 'cssdir /Register'. See (B.) 
Installation section:

**** /Dir: and DORA* options ****
---------------------------------
/Dir:   [.]        starting directory or directories 
The directory or directories you wish to search for matching entries. It can 
contain normal wildcard characters or just directory names or explicit 
complete filespecs. One can use two different syntaxes for this option. CSSDIR 
explicitly supports the usage of '/Dir:' or assumes implicitly anything that 
doesn't start with a '/' to be a dirspec. The user can run directories and or 
filespecs together with no spaces by puting an immediate ';' between them.

(begin advanced section)
If you need to use a ';' as a filespec or directory, first escape (its normal 
meaning) with a leading '~'. Such as 'CSSDIR 
/Dir:c:\os2;c:\ibmlan;c:\my~;dir;c:\ibmcom'. This would search the following 
directories: 'c:\os2' 'c:\ibmlan' 'c:\my;dir' 'c:\ibmcom'. One can also append 
specific overiding options to each of the entries. 
i.e. 'cssdir /Dir:c:\os2/s;c:\ibmlan/a;c:\my~;dir/Wc:*.c~;*.h;c:\ibmcom'. This 
would search 'c:\os2' directory and all its subdirectories, search the 
'c:\ibmlan' directory including all files hidden and system, search the 
'c:\my;dir' including only files with matching wildcards '*.c' and '*.h', and 
search the c:\ibmcom directory.
[Please note the '~;' instead of just ';' in between '*.c' and '*.h' is 
necessary because otherwise it would be processed by CSSDIR to mean search for 
'*.h' in the current directory and not in 'c:\my;dir'. 

Also by default /Dir: (implicit or explicit usage) appends each dirspec 
listed. The usage of /=Dir: flushes the current /Dir: setting (to nothing), 
this could be handy instead of editing it out before reinvocation of a 
previous command. The /-Dir: prepends a dirspec and supplies a ';' in between 
the prepended one and the existing /Dir: setting. Also if you are using DORA* 
options in a DORA* mode, you must starting with version 3.0 explicitly use 
'/Dir:' or '/-Dir:'. (end advanced section)

The following overiding defaults (aka DORA*) available to the /Dir: option 
include /Wc: /s /a /Srd: /Srs: /Srz:. Also available to use with /Dir is 
@dirspecs. The @dirspecs means one can request CSSDIR to open 'dirspecs' file 
and fetch 1 per line directory specification to search for matches. The option 
/Dir:@ is very useful to compile a selected 'canned' set of files you wish to 
do CRCs on or zip into a daily backup etc. Also if any dirspecs contains any 
spaces then enclose such dirspecs in '"' or "'".  i.e. 'cssdir "program 
files"'
or 'cssdir /Dir:"program files"'.

/a      []         DORA* attr: /a /a[:][ADSHR-*$]
      '/a' is alias for /a:*A*D*S*H*R 
      A include entries with Archive bit set          
      D include Directory entries                     
      S include System entries                        
      H include Hidden entries                        
      R include Readonly entries                      
      * don't care attribute                          
      $ at least one marked with '$' must match; handy
        to find system and/or hidden files only i.e. /a$h$s
      - reverse above sense; do not include entries. For example '-H' will not 
       include hidden entries. 
Similar to cmd.exe's 'dir /a', however starting with version 3.0 cssdir 
includes hidden and system files by DEFAULT. To find all hidden files on drive 
f try 'cssdir f:\ /s /aH' or 'cssdir f:\ /s /a*a*d*sh*r'. If you want to list 
the files' attribute bits also see /Lfa option settings. Use of the '$' 
suboption can be very convenient, especially when looking for system AND/OR 
hidden entries only!! AGAIN you have to dir and dir and dir again to get that 
with dir. Also see symbolic defintion /$hsEntries$/ in cssdir.cfg!

/s      [CUR] DORA* subdir NO,CUR,ALL /s[nn][X(h|s|hs|sh)] (nn=maxDepth 2-99)
'/s' is an alias for /sALL; '/sCUR' for the current Dir; '/sNO' for none. '/s' 
is similar to cmd.exe's /s but also allows /sNO which does not include the 
names of immediate subdirectories and cssdir's /s also can control maxDepth 
from 2 to 99 by using /s2 ... /s99, further cssdir's /s can also use 
suboptions [Xh|Xs|Xhs|Xsh] to avoid transversing subdirectories that have 
their hidden and/or system bits attribute bit(s) set. i.e. /sXh skips 
transversing subdirectories with their hidden attribute bit on, /sXs skips ... 
with their system bit on, /sXhs and /sXsh skips ... that have both hidden and 
system bits on. Regular dir does NOT transverse such directories easily. 
Summary follows:
       /s is an alias for /sALL
       /sCUR current directory's files and subDirectories
       /sNO  just current directory's files
       /sALL include all branches even hidden and system dirs
       /s[nn][X(h|s|hs|sh)]
       legend:
       []: encloses optional item
       nn: means optional 2-99 max level subdirectory depth
       (h|s|hs|sh): means 1 of the enclosed is required
       () encloses which dir branches to skip, either the ones
       with their dir attribute set to: h=hidden, s=system;
       hs or sh = skip both

/Srd:   [ALL]      DORA* date range(s) of files to include; 
This option limits which files will be searched based on its last update 
timestamp. To limit it to a specific date, for instance for May 31, 2000. Use
'/Srd:2003-05-31'. For a specific range (include both endpoints [inclusive]) 
use '/Srd:2003-05-31:2003-06-15'. Also note there are many shortcuts for 
commonly used ranges: To include just the files that changed since Monday of 
the current week inclusive use '/Srd:curweek', For all files with timestamps 
since including the previous Monday inclusive use '/Srd:cur2week', ... up 
through /Srd:cur13week. For just today use '/Srd:.' or '/Srd:today'. For just 
the year 2003 use '/Srd:2003'. For the month of June in 1999 use: 
'/Srd:1999-06'. For the current month use '/Srd:curmonth'  ... up through 
'/Srd:cur12month'. For date ranges that are not continuous use something 
similar to this '/Srd:2003;2002;2001-06' this will include only files having 
timestamps which include a year of 2003, 2002, and the month of June of 2001.
When using /Srd:curweek (or curNweek where N is 1 to 13), one can define what 
day starts the week via option '/Daws:', by default /Daws:0 is set to having 
Monday as the start of the week. To change this for all invocations to have 
day of week start on a Sunday add /Daws:6 to /$cssdirDefArgs$/ in you CSSDIR 
cfg file or to environment var cssdirDefArgs.

(begin advanced section)
You can also append a date range onto a given dirspec by appending (with no 
spaces) '/Srd:', however to use /Srd: in a DORA* mode, one must explicitly use 
the /Dir: option. Also if you are using multiple ranges you must escape the 
semicolons with '~' otherwise it will take the date range as a dirspec. For 
instance if dirspec was 'c:\' use '/Dir:c:\/Srd:2003~;2002~;2001-06' if you do 
not use the '~' as such, then the directories searched will be 'c:\' with date 
range of 2003 and then the directory 2002 and directory 2001-06 which most 
likely was not intended, but is entirely acceptable with CSSDIR. You can also 
limit the list to the last n days by using '/Srd:-n', where n can be a number 
from 0 to 999 days. To see the range explicitly see the /Soo: option.
(end advanced section)

/Srs:   [ALL]     DORA* Size Range: 
With a setting of '/Srs:all', this option will not exclude any files based on 
its size. '/Srs:1000000' will limit the range to files only 1000000 bytes in 
size. '/Srs:0,15000' will limit to files under 15001 bytes; '/Srs:1000,$' will 
limit files to 1000 bytes or larger. 

/Srz:   [ALL]      DORA* EaSize Range
With a setting of '/Srz:all' cssdir does not exclude any files because of 
their Ea size; With a setting of '/Srz:1000,$' allows only files whose Ea size 
is at least 1000 bytes in size; To list non zero Ea sized files use '/Srz:1,
$'. Also see symbolic definition /$eaFiles$/ in cssdir.cfg.

/Wc:    []         DORA* wild card(s)
Very convenient to apply multiple wildcards over multiple directories. i.e. 
'/Wc:*.c;*.h;*.cpp;*.hpp' works in conjunction with /Dir: option.

**** NORA- non OverRideAble options (1 setting per CSSDIR invocation) ****
--------------------------------------------------------------------------
/00                zero normal output options; need subsequent opts for non
                   error output ... Currently All /Lf and /Lr options are
                   set to '0' or blank; as well as /Soo: /Foo: /Ve: /Vn:

/b      [0]       
With a setting of '/b1' or just '/b' it is an alias for /Bf1; if the '/s' or 
'/sALL' or /sXX (2-99) is also active then '/b1' or '/b' is an alias for 
'/Bf3' (/Bf is much more flexible). Similar to cmd.exe's 'dir /b'.

/BD                initialize cssdir options to out-of-the-Box Defaults

/Bf     [0]        Bare /Lff field, see /Lff field description.

/Ce     [0]        Combine stderr to stdout; 
Useful for proper stderr output ordering (with CSSDIR version greater than 
1.xx) if 'more' or similar filter program is used. Use /Ce1 to combine stderr 
to stdout. /Ce2 is the same as /Ce1 but also still routes to stderr, this is 
similar to an Unix style 'tee'. /Ce3 is similar to /Ce1 but on an abnormal 
termination condition it routes a terminating message to the console as well!

/Daws:  [0]        weekStart day  0=Mon,1=Tue,2=Wed,3=Thu,4=Fri,5=Sat,6=Sun,
                   This is used in conjunction with /Srd:curNweek.

/Dumpo: [N]        dump options settings Y=yes N=no A=all B=brief S=sorted 2=
This option when active (isn't set to /Dumpo:N) lists the options current 
settings and in some settings additional system information. The 'A' setting 
will also dump the contents (if any) of all the symbolic definitions from 
CSSDIR.cfg file (including automatically defined system ones) with the other 
options. To continue normal processing after listing the options settings 
append '/C', i.e. /Dumpo:b/c. Also /Dumpo:2 dumps a very brief 2 line set of 
active options.

/Ecrc:  [N]        compute Ea CRC
With a setting of '/Ecrc:Y' files with EAs will have a computed EA attempted, 
that value can be displayed with listed entries using the '/Lfb1' or just 
'/Lfb' option. Also see /Tdir: and environment variable cssdirTmp, which may 
be used for any needed temporary disk scratch space. Also see the environment 
variable cssdirTmp and the cssdir.cfg user symbolic definition /$cssdirTmp$/.

/f      [0]        /f or /f1 is alias for /Bf3
With a setting of '/f1' or just '/f' this is similiar to cmd.exe's dir /f 
option. [also see /Bf]

/Fcrc:  [N]        compute file CRC
With a setting of '/Fcrc:y' a file's CRC (on its non EA data) is requested to 
be computed unless some other file options indicate to exclude [see /Src: 
/Xr2:], To have the file's CRC (on its non EA data) displayed use /Lfc.

/Foo:   [0]        foundOutputOption  
This option if set to '/Foo:1' will list each dirspec result of found entries 
and a total count of found entries after all dirspec(s) are searched, if 
'/Foo:2' then only the total count of found entries will be displayed. 

/Laifs: [L]        List/Abort if invalid filespec/dirspec(s)                 
          A abort on first such dirspec/filespec                 
          L list all such dirspec/filespec                       
          Y same as A but lists all before aborting
With this option setting the user will be appropriately notified via CSSDIR 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code if an invalid filespec/dirspec is given. [See (I.) 
Error/warning/information message codes section:]. TIP: In automated scripts 
for diffing two directories /Laifs:A can be very handy for checking for 
invocation errors.

/Lamcd: [A]        List/Abort if mixedCase duplicate filespecs found
          A abort on first such filespec
          Y same as A but lists all before aborting
With this option setting the user will be appropriately notified via CSSDIR 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code, when a filespec matches a previously found one that differs in filename 
case. [See (I.) Error/warning/information message codes section:]. This 
notification could come from IFS drivers that allow access to file systems 
that can have mixed case file names. i.e. NDFS netdrive mapped to UNIX systems,
 see caveats section. Currently CSSDIR does not continue processing when such 
cases are detected.

/Lanf:  [L]        List/Abort if no (qualified) files found on dirspec(s)      
          A abort on first such dirspec/filespec                 
          L list all such dirspec/filespec                       
          Y same as A but lists all before aborting              
          0 shut off
With this option setting the user will be appropriately notified via CSSDIR 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code, when a dirspec given does not produce any qualified files. [See (I.) 
Error/warning/information message codes section:]. TIP: In automated scripts 
for diffing two directories /Lanf:A can be very handy for checking for 
invocation errors.

/Lanu:  [L]        List/Abort if non unique filespec found                
          A abort on first such non unique filespec found                 
          L list all       such non unique filespec found                      
          Y same as A but lists all before aborting              
          0 shut off
With a setting of '/Lanu:L' will list during initial search all files that 
CSSDIR has already detected as the same file. '/Lanu:A' will abort as soon as 
it finds the first such file, '/Lanu:Y' is the same as '/Lanu:A' but lists all 
such instances before aborting. Please note, CSSDIR does *NOT* detect the file 
as non unique if you mapped a file via a network drive or use a UNC and also 
access the same file(s) under another method. This can lead to totals being 
wrong and files unknown to be the same file to be listed twice, as well as 
also reported as potential duplicates (when using the /Lxpo:*dups-asc or 
/Lxpo:*dups-des), hence be careful if you are doing these tricks especially 
when you are deleting what was thought to be a duplicate file. This option may 
also warn you when using NDFS, see caveat section when using NDFS ifs driver. 
It is recommended to leave this setting to have a non zero setting.

/Lasfw: [L]      List/Abort search file warning; (binary or line too long)
          A abort on first such search file warning
          L list all       such search file warning(s)
          S skip/exclude the file containing the warning
          T same as Z but list total files per dir/filespec
          Y same as A but lists all before aborting
          Z same as S but do it silently
          0 shut off
This option is used in conjunction with the /Sch: option. If /Sch: is used on 
non standard text, aka binary files or files that have lines that are 
abnormally long. It may not find all the occurrences of search strings because 
of line breaks and max line size exceeded ... and you should receive 
appropriate messages if they are enabled when doing such a search that 
contains such files.

/Lasmw  [L]      List/Abort search temporary memory exceeded warning
          A abort on first such warning
          L list all and include results so far
          S skip and exclude the file containing the warning
          I include file and results so far but don't warn
This option is used in conjunction with the /Sch: option. Also see environment 
variable cssdirSchMem.          

/Mf:    [-X-R-2]   Miscellaneous Flags   /Mf:[BCZYXR2-]                      
                      '/Mf:' is alias for /Mf:BCZYXR2                        
    B list files that    eaData can't be read for CRC calc 
    C list files that  fileData can't be read for CRC calc 
    Z list files that    eaSize can not be obtained        
    Y list files that CRC weren't computed (>= 2gig fsize)  
    X list files that CRC weren't computed; due to /Xcrc:  
    R list files that CRC weren't computed; due to /Src: 
    2 list files that are 2 gig or bigger in filesize      
    - reverse sense on above option
    To append to an existing /Mf: use /+Mf:
/Mf: suboptions settings have to do with the user getting appropriately 
notified via CSSDIR writing to stderr: with the corresponding CSSDIRyyy: 
error/warning message code [See the list of such codes in (I.) 
Error/warning/information message codes section:]. You may redirect these 
messages as well as others that are directed to stderr: via the command line 
using '2> nameOffile' (don't forget to remove the ' or via option '/Ce'. 
Option settings B, C, and Z may occur if some files are locked in a filesystem 
that's either booted from or in use by the booted operating system or active 
application (typical files include: net.acc, net.aud, swapper.dat, etc), to 
avoid such errors one can close such applications before processing such files,
 boot from another partition, or use the '/Xr1:' or '/Xr1:@' option on such 
files, only later to boot separately, etc. to CRC just those few files using 
the '/Dir:@' option. 

/Nr:    [0]        noReadAccess: 
With a setting of '/Nr1' or just '/Nr' CSSDIR will prelist before and also 
list within the normal listing noReadAccess files. With '/Nr2' exclude such 
noReadAccessable files but given warning, With '/Nr3' same as '/Nr2' but 
silently, with '/Nr:4' =include Only noReadAccess entries, with '/Nr5' same as 
'/Nr4' but silently (no prelist).

/Of:    [stdout:]  outFile[/ANOMTY]                                          
     A =append to (any) existing file(s)       
     N =new, file(s) must not already exist    
     O =overwrite (any) existing file(s)       
     M =multiple file(s) mode, if /List: has multiple reports, use 'outFile'
        as base filename and on subsequent files append '1' then '2' and so on
     T =timestamp included in outfile          
     Y =if 'M' is active timestamp is included in any subsequent file(s)
     When using 'O' with especially 'M' use with caution!
Note one can still use > to redirect all stdout. As well as redirect both 
stdout: and stderr: to the same file with '>outfile 2>&1' or '/Ce' with 
'/Of:'. [Also see included examples.txt file]. One advantage to using /Of: 
over > is By default with the expection of stdout:, /Of: will not overwrite or 
append unless the user specifically appends option /O or /A. The /Of: option 
may be valuable in large jobs were you want to redirect other processing but 
not the stdout of CSSDIR. Further you may on such jobs be unusually surprised 
to get any errors to stderr, and really want them to be announced to the 
screen or via 2> redirection. The /T also outputs a timestamp to the /Of: 
named file. The /Y works with /M to put timestamps in any subsequent 
additional files caused by multiple list reports via (/List:). Tip: using auto 
generated symbolics, one could generate unique filenames when using the /Of:, 
i.e. /Of:report1./$$date$/./$$time1$/, would output the results to a file name 
starting with report1.currentdate.currenttime. Usually when you do this its in 
conjunction with /Pi1 option (so you know what the filename was called, useful 
if you want to use a unix style tail on it during its creation). 

/Pfof:  [stdout:]  PfoutFile[ANOMTY]  similar to /Of: but for /PfOf:
      M is allowed because when /Pfof: and /Of: point to the same file 
        their suboptions must match                              
      Y same as M                               
Similar to '/Of:' however for any /Pf results the '/Pf' option must be active. 
See '/Pf' option.

/Pf     [0]        PreviewFile rec
      1=ALL standard fileInfo + Reference Number
      2=1 less Attributes and Reference Number
      3= Reference Number and entrySpec (filespec/dirSpec) only
      4= entrySpec (filespec/dirSpec) only
      5=1 stop after previewFile phase
      6=2 stop after previewFile phase
      7=3 stop after previewFile phase
      8=4 stop after previewFile phase
This option will display files immediately as they are found without any 
additional processing on them. [Any such output that contain a line that 
contains an '*' near the beginning may have inaccurate information with 
regards to the file's attribute, and/or easize, because of an OS api bug, this 
is later fixed up before normal output.] Add suffix /NOFLUSH or /N to skip 
flushing the output buffer after each entry is Found. This can improve 
performance if large amounts of data are generated. It is thought that if you 
want to preview files, you most likely also want that info as soon as possible,
 and by default this output is always flushed after each entry is found. You 
must append /N or /NOFLUSH if you want to override this. All directory entries 
will have a '\' appended. This option is usually only valuable on long file 
searches which are
expected only to produce a few files, and the normal buffering of CSSDIR will 
normally prevent the interactive user from getting timely feedback. Also see 
/Pfof: option.

/Pi     [0]        ProcessInfo rec 
          1=Console      
          2=stderr      
          3=stdout        
          4=/Of:         
          5=/Pfof:
A setting of '/Pi' is the same as '/Pi1'. This option gives basic process info 
near the beginning of a CSSDIR process and when it completes normally. This 
information can be useful in monitoring a CSSDIR process with the cssmon 
utility, as well as give the total process time separate from regular output. 
Handy for long running or HUGE CSSDIR requests. 

/Pt     [0]        ProcessTime record
With a setting of '/Pt1' or just '/Pt' lists total time to process user 
requests; /Pt2 lists gather time and if crc's are computed the time to compute 
them. /Pt3 equals /Pt1 and /Pt2.

/Py:    [*]        priority 
With a setting of '/Py:*' means don't change the current command window/shell 
priority. Other settable values  are; 0=lowest; 40=highest; 0-31 are in idle 
class 32-40 in regular class; 

/Sch:   []         searchString 
Use a leading '/C' for case sensitive searches. Use '/CseArchStr' to find an 
exact match of 'seArchStr'. For insensitive search use a leading '/I' or 
nothing because its the default sensitivity. One can also search for two 
different strings that are in the same file by using str1+str2. i.e. to find 
'Curtis' and 'Software' with the exact case -try 'cssdir 
/Sch:"/CCurtis+/CSoftware"' and for an insensitive search try 'cssdir 
/Sch:"Curtis+Software" or 'cssdir /Sch:"/Icurtis+/ISoftware". For either 
Curtis or Software, substitute '$' for '+'. Also use ';' for multiple 
searches. Also can escape ';' and '+' and '$' with an immediate preceding '~'. 
Also see caveat on searching binary files in (L.) Hints, tips, issues and 
caveats section:.
Also see option '/Scho:' and '/Lasfw:'.

/Scho:  [1]        show SearchString hits 
With a setting of '/Scho:1' and the option '/Sch:' is active then list a line 
summary of string matches file by file. With '/Scho:2' more details will be 
listed. Use '/Scho:0' if you don't want to see any of this.

/Soo:   [1]        SearchOutputOption 
This option may list the specifics of the initial search criteria of /Dir: and 
any DORA* option(s) that are currently active. If the setting is '/Soo:1' it 
will list such specifics/details only if a user has specifically overrode the 
default values of that criteria. i.e. used /a /s /Srd: /Srs: /Srz: /Wc: (used 
in a DORA* mode). With a setting of '/Soo:2' it will list the details only if 
more than one dirspec and/or '/Wc:' or '/Wc:' will produce more than one 
dirspec to be searched. With '/Soo:3' the details or the search criteria will 
be listed regardless of whether defaults were overridden or multiple dirspecs 
are to be searched. /Soo:* sets /Soo: to out of the box default.

/Src:   [ALL]      Size Range compute CRC: 
With a setting of '/Src:all' it does not exclude any files to undergo their 
CRC being computed; '/Src:1000,$' will allow CRC computation to be done on 
files 1000 bytes or larger [also see /Fcrc:y].

/Tdir:  []         Temp directory; Used with /Ecrc:y
Set this option (or Environment variable cssdirTmp) when using the /Ecrc:y 
option to a directory that is to used for scratch space. it recommended that 
it should have about 15 megabytes of scratch space, Normally no more than 1-2 
megabytes is ever used and any temp files created should automatically be 
removed (by CSSDIR) when CSSDIR finishes. Use of the /Tdir: option if set 
overrides any setting to the environment variable cssdirTmp or the CSSDIR cfg 
file user definable variable '/$cssdirTmp$/'.

/Tis    []         curTimeStamp;
Outputs a current timeStamp to stdout at CSSDIR startup time.

/Ve:    [2]        verbose level 0=off 1=basic 2=more 3= still more ....
Useful for more details, /Ve:1 will redisplay the invocation line, /Ve:2 or 
higher will also show any symbolic substitutions translations (if any) used on 
at invocation time. /Ve:* sets /Ve: to its out of the box default.

/Vn:    [1]        display version 
With a setting of '/Vn:1' it will display the basic info about the version of  
CSSDIR you are currently running. With a setting of '/Vn:2' it will display 
all the version information. /Vn:* sets /Vn: to its out of the box default.

/Xr1:   []         Suffixes of files to exclude; 
Use ';' for multiple suffixes; For example use 
'/Xr1:.zip;.rar;os2\system\swapper.dat'. Use /prefix/ to reverse sense of 
suffix to prefix. Use /dirPrefix/ to exclude entire directory trees. i.e.
/Xr1:.zip;/dirPrefix/f:\os2\ will exclude all entries ending with '.zip' as 
well as the directory f:\os2\ and all its subdirectories. /+Xr1: concatenates 
to the current /Xr1: setting, whereas /-Xr1: prepends to the current /Xr1: 
setting, in both cases cssdir supplies separating character ';'. Also can use 
@excludeFiles, 'excludeFiles' is a file that contains a list of suffixes 
and/or prefixes (with any intended /prefix/ or /dirPrefix) 1 per line.

/Xr2:   []         Suffixes of files to exclude CRC computing; 
Use ';' for multiple suffixes; For example use '/Xr2:.zip;.rar'. Also can use
/prefix/ and /dirPrefix/ (see similar /Xr1 description). Also can use 
@excludeFilesCrc, 'excludeFilesCrc' is a file that contains a list of suffixes 
and/or prefixes 1 per line. /+Xr2: concatenates to the current /Xr2: setting, 
whereas /-Xr2: prepends to the current /Xr2: setting, in both cases cssdir 
supplies separating character ';'.

(begin advance section)
On some rare occasions if you have a file suffix that needs to contain a ';' 
first escape it with a '~'. i.e. '/Xr2:spec~;files;.zip' would exclude 
filenames that end with 'spec;files' and '.zip'. Without the '~' it would 
exclude filenames that end with 'spec', 'files', and '.zip'. You also may want 
to exclude files that begin with a '@' again first escape them with '~'. i.e. 
'/Xr2:~@xxx' would not treat '@xxx' as a file to read a list of exclude files 
but rather simply exclude filenames ending with '@xxx'. Please note CSSDIR 
does *NOT* check for a leading '@' within a file it is currently reading 
filenames to exclude via the '@excludefiles'.
(end advance section)

**** /List: and LORA* options ****
----------------------------------
/List:  [/*]       list of orders
This options allows the user to 'list' a number of orders or requests to 
process which can produce multiple listings all in one pass over the specified 
dirspec(s). It can lead to much convenience and can take much less time than 
reInvoking CSSDIR multiple times over the same dirspecs. The user separates 
each requested order by a ';'. To simply get the current default listing 
append '/List:/*' (which is its default setting) to your current invocation of 
CSSDIR. To get the default listing and display all fields in the next listing 
sorted by descending date with a title of "* sorted by descending date*#" try 
appending '/List:/*;/1/o-D/Lrtbeg:"* sorted by descending date*#"'.
You may also use/append LORA* options, these options all start with the 
following prefixes '/Lf' (list fields), '/Lr' (list records), or '/Lx' (list 
additional/miscellaneous fields) and '/o'. To prepend to an existing '/List:' 
option use '/-List:' and to append to an existing '/List:' use '/+List:' and 
don't forget to include any intended semicolons ';' appropriately!

One other valuable hint even for the non power user is to use this option with 
the /Bf3 or /b or /f option which turns off almost all the options to produce 
a bare filename, but that not's what you ultimately want but rather you want 
to turn everything off fast and then simply turn on only what you specifically 
want. Try 'cssdir /Bf3 /List:/Lfs'. Which will list only the File size field 
followed by the filespec. Also see power option /00.

** LORA* displayable field (Lf) options **
------------------------------------------
/Lfa    [5]        LORA* Attribute        1=t----z 2=t-d---z 3=dir 4=txz 5=*z
With a setting of '/Lfa1' or just '/Lfa' list a files attribute bit field 
settings for each file listed without the directory attribute bit setting.
They are 6 settings (including 0 for off) for /Lfa, a Summary follows:
   1=t----z 2=t-d---z 3=dir 4=txz 5=*z
   legend:
   t = transverse h=hidden s=system b=both
   d = directory entry
   z = concise EA size code
     -= no EAs
     +=  1    to  1k (all inclusive)
     1=  1k+1 to 10k
     2= 10k+1 to 20k
     3= 20k+1 to 30k
     4= 30k+1 to 40k
     5= 40k+1 to 50k
     6= 50k+1 to 65535
     #= 65536 or greater
   dir = like regular dir /V
   k above = 1000 bytes
   x = file attribute h,s,b (b= s+h)
   * = h,s,b,H,S,B,x,X
     h=hidden file attrib
     s=system file attrib
     b=h+s    file attrib
     H= h   + trans h and/or trans s
     S= s   + trans h and/or trans s
     B= s+h + trans h and/or trans s
     x= trans h or trans s
     X= trans h and trans s
Transverse (or trans) above means subdirectories that are normally not 
transversed via normal cmd.exe's dir usage because either the subdirectories 
system and/or hidden attribute bits are set. With regular dir it is annoying 
to sift such directories. Tip: By default cssdir sifts those directories when 
a simple /s or /sNN is used, to have it behave as dir's use option /s i.e. 
/sXsh.

/Lfb    [0]        LORA* EaCrc field
This option will list the computed files Eas CRC value for each of the listed 
files. A value listed in the found files EaCrc field of '-1' means that the 
Eas could not be read, '-2' means option '/Ecrc:n' was active and therefore no 
Ea crcs were computed, a '0' value means that the file has no eas to compute. 
This option can also be specifically overidden via the '/Lfb' within the 
context of the '/List:' option as all other LORA* options can be as well!

/Lfc    [0]        LORA* FileCrc field
With a setting of '/Lfc1' or just '/Lfc', this option lists a file's 32 bit 
computed CRC in hexadecimal when used in conjunction with '/Fcrc:y'. A 
negative (and also non hexadecimal) value listed in the filecrc field has 
significance: -1 indicates the listed file data could not be read, -2 
indicates option '/Fcrc:n' was active, -3 indicates file size was not in CRC 
requested range [see /Src:], -4 indicates the file was excluded based on its 
suffix [see /Xr2:], -5 indicates the file was excluded because it sizes equals 
or exceeds 2 gigabytes bytes (because this is not supported yet!). [Also see 
/Mf: option].

/Lfd    [1]        LORA* Date Field
With a setting of '/Lfd1' or just '/Lfd' lists date field format as mm-dd-yy. 
If setting is '/Lfd2' then use yyyy-mm-dd; if setting '/Lfd3' then use ddMmmyy,
'/Lfd4' =yyyymmdd, and '/Lfd5' = XXXXmmdd if XXXX is current year then leave 
XXXX (year) blank only shows mmdd for such entries.

/Lff    [5]        LORA* FileSpec field
This option is very flexible in giving the user control in displaying a 
filespec. With a setting of '/Lff1' or just '/Lff' it will display the 
relative path filepsec. '/Lff2' will only list the relative REQUIRED filePATH 
(if any and drop the filename portion completely), usually used with /Lfn 
option. '/Lff3' will list the complete filespec including drive or UNC file 
share name. '/Lff4' will list just the filename (includes extension) ONLY. 
'/Lff5' is the out the box default, and dependent on a number of things: its 
the same as /Lff1 but if the option '/Lrrs' has settings of 1,2, or 3 and the 
'/Lxpo:' does not contain an 'X' AND option '/Lxrst:' equates to directory 
type summaries then use '/Lff4' instead, Normally you do NOT need to change 
this, but if you do usually you will be selecting '/Lff3'. '/Lff6' also is 
dependent on a number of things: it is similar to '/Lff5' but will display 
info after taking into consideration the '/Lfn' option setting; displaying 
only as much as necessary to rebuild the complete filespec, and in some cases 
may not need to display any, because that information is provided in a 
directory or request summary and also the /Lfn option has displayed the full 
filename portion. Also see /Lrsl:, /Lfn.
... Brief Summary follows:
  1=relative fileSpec
  2=relative required path Only (if any)
  3=full fileSpec (with drvLtr: or UNC)
  4=filename (with ext) only
  5=1 but if /Lrrs has settings 1,2,3 AND /Lxpo: does not contain an 'X' AND
      /Lxrst: equates to dir summaries then use /Lff4 instead.
  6=similar to /Lff5 but display info after taking into consideration the /Lfn
    setting; displaying only as much as necessary to rebuild the complete
    filespec, (may not need to display any).

/Lfh    [2]        hintString       
This option provides what is referred to as the hintString in CSSDIR. This 
string is a hint or concise identification coded string. It can provide a 
compact way to identify various things about the listed file and the type of 
listing it is a part of (merge, no merge, ordering (sorting) within a 
directory boundary or not, as well as quickly identifying especially on long 
directory listings whether the file listed above or below is in the same 
directory or not. It has the following formats:
  1= 1request[DCC]  else[DCC(+|-)SHC]
  2= 1request(none) else[DCC(+|-)SHC]
  3= [DCC(+|-)SHC]
  4= [DCC(+|-)SHC,DH]
  5= [PO:DCC(+|-)SHC,DH]
  6= [SHC]
  7= 1request(none) else [SHC]
Above mnemonics follow:
DCC- dump Counters code; a unique number incrementing on either a dir change 
or change in request (see /Lxrst: ).
SHC- short hand code/user dirspec request code.
(+|-): '-' is used on /Lxpo:N settings otherwise '+' for merge is used.
PO - /Lxpo: setting
DH - device hint x:(drvLtr:) or \\(UNC).
The use of '['+']' is representative of: '[]' regular dir order summary 
requests; '<>' indicates /Lxpo: contains and 'X'. Note: If /Lfh0 + more than 1 
dirspec request has been requested and effectively /Lff1 or /Lff2 is active, 
user may get a warning on possible location of files listed maybe ambiguous. 
Also note: with /Lxpo:*dups-asc, /Lxpo:*dups-des the hintString if (/Lfh) has 
non zero setting is currently forced to use <SHC>. The best way to fully 
appreciate as well as understand this option is to try a few examples and 
COMPARE/CONTRAST their output: such as 'cssdir c: d:', 'cssdir c: d: /Lfh5', 
'cssdir c: d: /Lxpo:ax', 'cssdir c: d: /Lxpo:ar'. Examples assumes you have 
accessible drives C: and D:.

/Lfi    [0]        Indent           1=4spaces 2=8sp 3=12sp 4=16sp ... 9=36sp
Allows user to indent or tab any following fields. '/Lfi' or '/Lfi1' indents 4 
spaces, '/Lfi2' indents 8 spaces ... '/Lfi9' indents 36 spaces, handy for 
visual alignment of summary fields with detailed file fields due to the use
of the /Lrrs options 2,3, and 4.

/Lfl    [0]        dir Level        1=level 2=RelativeLevel 3=1+2
'/Lfl1' or just '/Lfl' displays the relative Dir level number, '/Lfl2' list 
the base dir level number (from the root directory), '/Lfl3' displays both 
relative and base dir level numbers.

/Lfm    [1]        LORA* directory flag
With a setting of '/Lfm1' or just '/Lfm' append a trailing '\' to listed 
directory entries on '/Lfn' and '/Lff' output fields.

/Lfn    [0]        LORA* FileName field 
With a setting '/Lfn1' or just '/Lfn' the display will list just the 
filename.ext, however with the setting '/Lfn2' it will format the filename 
less any extension over approximately 20 spaces and chop according (indicating 
a chop by a trailing asterisk on both the filename and ext if necessary) 
followed then by The Ext formatted over 9 spaces - Great for extension sorted 
viewing and nice to use with '/Lxpo:*dups-asc' or '/Lxpo:*dups-des'. /Lfn3 = 
/Lfrn1 + appends a trailing '/' (useful for parsing the output via a rexx 
script or such). /Lfn4 = /Lfn2 + '/'. /Lfn5 = limits filename + extension to 
30 chars, indicates it was chopped with an asterisk, /Lfn6 = /Lfn5 + '/'.

/Lfp    [0]        Sch Cnt
'/Lfp1' or just '/Lfp' displays the number of search string hits from the 
/Sch: option. Also see /op.

/Lfq    [2]        space shim       0=off 1=1space 2=2space ...9=9space
This option is a space shim for more granularity than the /Lfi option. See the 
/Lfi option. /Lfq = 1 space shim, /Lfq2 = 2 spaces inserted ... /Lfq9 = 9 
spaces inserted.

/Lfr    [0]        LORA* RefNum field; 
With a setting of '/Lfr1' or just '/Lfr' list a reference number that is 
uniquely assigned to a given file on the current invocation of CSSDIR. Can be 
useful for reference purposes especially if the '/List:' option has multiple 
listing requests. '/Lfr2' same as /Lfr1 but also append a ';', making 
searching with a programmer's editor much easier to find cross reference 
numbers between listings within one invocation without getting a lot of false 
hits, i.e search for reference number 15 in a listing of 1000 files, then use 
a leading space followed by '15;' and followed by another space. This will 
avoid getting false matches on 115, 215, 315 and so on. Complete summary 
follows:
        1= ref number
        2=1 + ';' handy for editor searching
        3=1+,
        4=2+,
        5=1 but base62
        6=2 but base62
        7=2 but use 6 spaces + ';'
Above '+,' means plus any needed commatization (thousands separator).

/Lfs    [3]        LORA* FileSize field 
With a setting of '/Lfs1' or just '/Lfs' the filesize field for directories 
will contain the entry '<DIR>' and with a setting of '/Lfs2' it will have all 
file size entries numeric and thus directory entries will contain a zero. 
'/Lfs3' same as '/Lfs1' but commatize the field as necessary. '/Lfs4' same as 
'/Lfs2' but commatize the field as neccessary.

/Lft    [1]        LORA* Time field 
With a setting '/Lft1' or just '/Lft' will list the time in the format of 
hh:mm* where * is either a p or a for pm/am. With '/Lft2' the listed will have 
the time format in hh:mm:ss.

/Lfu    [0]        LORA* Unique file field
With a setting of '/Lfu1' or just '/Lfu' it will display on each listed file a 
field which describes how the file is different in file directories or trees, 
for any non-blank results one must use in conjunction with '/Lxuf:' option.

/Lfx    [0]     LORA entry Field 1=8digits 2=7dig 3=6dig 4=5dig 5=4dig 6=3dig
With a setting of 'Lfx1' or just '/Lfx', this option numbers each file listed  
starting from 1 for easy reference and formats that number for 8 digits. 
'/Lfx7' formats for 7 digits ... '/Lfx6' formats for 3 digits, if more space 
is needed than asked for you could get jagged output.

/Lfz    [0]        LORA* EaSize field
With a setting of '/Lfz1' or just '/Lfz', this option will list the Size of 
the Ea (in bytes). '/Lfz2' = 1 + commatize, '/Lfz3' = 1 but use only 7 spaces, 
'/Lfz4' = 2 but use only 7 spaces. By default this field is off and the /Lfa 
option lists a very concise codified easize character code ... see option 
/Lfa.

Please note all options described above that start with /Lf will not be 
displayed if the master on/off switch /Lxlo: (described below) does NOT ALSO 
include them. When used appropriately this is extremely flexible and also very 
convenient when it is also coupled with user definable symbolic codes in your 
cssdir cfg file. Also all /Lf options can reference the current global default 
value of the option by using an '*' where the number normally goes, i.e. 
/Lfa*. There are two varying cases of global defaults, one is 'out of the box' 
cssdir.exe default and the other is the current value (which might be the same 
as 'out of the box' default) that can be referenced in the context of the 
'/List:' option. i.e. 'cssdir /Lfa2 /Lfh6 /List:/*;/Lfh*' would produce two 
reports, on the second report /Lfh* translates into /Lfh6 (because its the 
current global default value).


** LORA* displayable record (Lr) options **
-------------------------------------------
/Lrab   [0]        LORA* ArchiveBitSet record
With a setting of '/Lrab1' or just '/Lrab' list the total count of found files 
that have their archive attribute bit set.

/Lrcb   [0]        LORA* AllClearBits record
With a setting of '/Lrcb1' or just '/Lrcb' list the total count of found files 
that have all their file's Attribute bits clear (not set).

/Lrdi   [0]        LORA* Drive information record
With a setting of '/Lrdi1' or just '/Lrdi' list queried drive(s) free space 
record(s); full available settings include: '/Lrdi1' =freeSpace for queried 
drives, '/Lrdi2' =usedSpace for queried drives .... Complete summary follows:
   1 freeSpace for queried drives
   2 usedSpace for queried drives
   3 1 line total per disk
   4 =1+2+3
   5 =1 line total for all disks
   6 =All details and summations
   7 similiar to 3 but more packed info
   /Lxmf:L can be used to shut off drvs= if disks > 1 and /Lrdi5.

/Lref   [0]        LORA* non 0 EasizeFiles record
With a setting of '/Lref1' or just '/Lref', this option will list the total 
count of files with Ea sizes. 

/Lrgt   [2]        GrandTotal       0=off 1=as needed 2=always
'/Lrgt1' or just '/Lrgt' lists the grand total line on a user's cssdir request 
which may include #entries #dir,#files eaBytes, sizes, total error/warning 
messages, and drives free space info. With '/Lrgt1' only displays if some 
entries were found, /Lrgt2 will always display this record. The output record 
starts with either a 'gt>' or 'GT>' depending if its a summation of a single 
request or multiple requests. The option /Lxmf: can have an effect what is 
included in this output record.

/Lrhb   [0]        LORA* HiddenBitSet record
With a setting of '/Lrhb1' or just '/Lrhb' list the total count of files found 
that have their hidden attribute set. 

/Lrhe   [0]        hiddenSysEntries 1=dirs 2=all
With a setting of '/Lrhe1' or '/Lrhe' list the total of hidden and/or system 
dir entries that were found. '/Lrhe2' also displays as a separate record any 
such file entries followed by totals record.

/Lrlh   [0]        LORA* ListingHead  record 
With a setting of '/Lrlh1' or just '/Lrlh' lists a listing heading settings, 
with a setting of '/Lrlh2' list only a listing trailer settings at end of 
listing, with a setting of '/Lrlh3' lists both listing settings.

/Lrll   [0]        LORA* listingLabel record 
With a setting of '/Lrll1' or just '/Lrll' list a label that identifies each 
of the fields that are to be listed at the beginning of a listing. With a 
setting of '/Lrll2' instead of at the beginning, the label is listed at the 
end of a listing. Use '/Lrll3' to list a label at the beginning and at the end 
of a listing.

/Lrlp   [0]        LORA* ListOptionProc   record(s) 
With a setting of '/Lrlp1' or just '/Lrlp' list the current active user /List: 
order request before the listing, with a setting of '/Lrlp2' lists as a 
trailer, with a setting of '/Lrlp3' lists both before and after. All such 
displayed records begin with 'lp>'.

/Lrlt   [0]        LORA* /List: ProcTime record(s) 
With a setting of '/Lrlt1' or just '/Lrlt' lists the processing time for the 
just finished '/List:' request. All such displayed records begin with 'lt>'. 
Also includes time to sort that listing (if any).

/Lrms   [0]        warn/err msgs    1=non zero 2=always (also in gt>/GT>)
'/Lrms1' display a record with a count of warning/error messages that have 
been issued if any, whereas '/Lrms2' always displays the count even if zero.

/Lrnd   [0]        LORA* NumDirectories    record
With a setting of '/Lrnd1' or just '/Lrnd' will list the count of the total of 
all directories found.

/Lrne   [0]        LORA* NumEntries        record
With a setting of '/Lrne1' or just '/Lrne' will list the count of the total of 
all entries (directories and files) found.

/Lrnf   [0]        LORA* NumFiles          record
With a setting of '/Lrnf1' or just '/Lrnf' will list the count of the total of 
all files found, (directory entries are not included).

/Lrns   [0]        LORA* numEntriesSearched record 
With a setting of '/Lrns1' or just '/Lrns' list the count of the total of all 
the entries searched when option '/Sch:' is active. '/Lrns:2' always lists 
this record whether '/Sch:' is active or not. '/Lrns:3' is same as '/Lrns:1' 
but also list another record with the totals bytes sifted for searchstr. 
'/Lrns:4' is same as '/Lrns:3' but always list.

/Lrrb   [0]        LORA* ReadonlyBitSet record; 
With a setting of '/Lrrb1' or /Lrrb lists the count of the total number of 
files that have the attribute readonly bit set;

/Lrrs   [3]        LORA* Request summary
This option provides request summaries of either directory style or request 
style (decided by /Lxrst: option). With a setting of '/Lrrs1' it lists a 
heading line with info based on the type of summary, such as a directory name 
if its possible. '/Lrrs2' lists an ending line containing summary totals for 
the number of files, dirs, sizes, and easizes and other info. '/Lrrs3' turns 
on both /Lrrs1 and /Lrrs2. '/Lrrs4' will list the same summary info as /Lrrs2 
but it informs CSSDIR not to output any of the individual specific record 
details that make up the summaries. Brief summation follows:
  1=header info of dir/request
  2=summary totals info line of dir/request
  3=1 + 2  (similar to cmd.exe's dirs but more concise)
  4=2 but no details
  0=off (no request summary generated)
  Option /Lxrst: decides type of request
Also very handy to have this option off for very compact listings i.e /Lrrs0.
                    
/Lrsb   [0]        LORA* SystemBitSet record; 
With a setting of '/Lrsb1' or just '/Lrsb' lists the count of the total number 
of files that have the attribute system bit set.

/Lrse   [0]        LORA* SumEaSizes record; 
With a setting of '/Lrse1' or just '/Lrse' will list the sum of the total 
bytes consumed by the files EA sizes.

/Lrsf   [0]        LORA* SumFileSizes record
With a setting of '/Lrsf1' or just '/Lrsf' will list the total sizes for the 
found files, NOTE: does not include the files EA size(s) in the total.

/Lrsl   [0]        LORA* shorthandList records
With a setting of '/Lrsl1' or just '/Lrsl' this will list the assigned 
"shorthand code" (aka SHC) for a given base path name and dirspec when it was 
assigned. Also can be useful to reBuild a full file spec with these values and 
the relativepath name. Appears just before listed files (if any) and starts 
with 'sl> ++['. Try 'cssdir /Lrsl'.

/Lrtbeg:[]         LORA* listTitle
Will prefix a listing with whatever follows the '/Lrtbeg:', for instance 
'/Lrtbeg:"This is a sorted first by date ascending and then file size", also 
for multiple lines use # for cr/lf. [Also See /Lrtend:]

/Lrtend:[]         LORA* ending listTitle
Will postfix a listing with whatever follows the '/Lrtend:', for instance 
'/Lrtend:"Ending of a sorted first by date ascending and then file size", also 
for multiple lines use # for cr/lf. [Also See /Lrtbeg:]

/Lrtr   [0]        hidSysTrEntries 1=dirs 2=all
With a setting of '/Lrtr1' or '/Lrtr' will list a record with the total of 
transversal dirs, and with a setting of '/Lrtr2' will also list a record with 
the total of all such files, followed by a totals records. A transversal entry 
is one that is obscured with regular cmd.exe's dir usage because it resides in 
a subdirectory that has its system and/or hidden attribute bits set ... also 
see /s for related information.


/Lrts   [0]        LORA* TotalSizes record
With a setting of '/Lrts1' or '/Lrts' will list the total filelengths and EA 
sizes combined usage in bytes.

/Lrzz   [0]        zzDirs           1=listTotal 2=1+ details
With a setting of '/Lrzz1' or '/Lrzz' this lists a record of the total count 
of all dirs that are not excluded for others reasons but may contain simply 
the '.' and '..' entries, and hence have Zero real files and Zero real 
directories from cssdir's perspective. '/Lrzz2' also actually lists such 
directories at the end of the active '/List:' report.

** LORA* other (Lx and o) options **
------------------------------------
/Lxcs:  [1]        /Lr commas       0=no commas on the /Lrxx options
With a setting of '/Lxcs:1',  commatize all the /Lrxx applicable options.
Note: normally does not apply to /Lrrs however if any individual field on the
summary line is forced (see /Lxmf: suboptions) to be displayed that field will 
follow /Lxcs:, which may include numEntries, numFiles, numDirs, totEaBytes, 
totBytes, etc.

/Lxkt:  [0]        K trip pt        
With a setting of '/Lxkt:1' cause commatization and trip point of switching 
from bytes to kilobytes (1k = 1000, 2k = 2000 bytes to closely resemble 
cmd.exe's dir criteria. The Number of digits in the totals records (on /Lrrs 
summaries) and in normal file size column (/Lfs) is chopped by 3 digits (if 
greater than 999) and append a '_K' and on bigger numbers '_M', (used only if 
commas are active).

/Lxlo:  [QIXDTHAZBSCUPNLRFM]; Lf layout  /Lxlo:[ABCDFHILMNPQRSTUXZ] 
This is considered the MASTER ON/OFF switch for displaying any /Lf options. It 
Pairs with corresponding /Lf options. i.e. A goes with /Lfa; D goes with /Lfd 
and so on and so forth. If the corresponding /Lf option letter does not appear 
in the /Lxlo: setting, it will not be displayed for any found entries. For a 
field to be displayed it must appear in BOTH the /Lxlo: option as well as be 
active, (in almost all cases that means non-zero), however /Lfh2 and /Lfh7 may 
not be displayed based on other criteria. Using this option with user symbolic 
codes is EXTREMELY flexible and convenient, you the user decides how and what 
is displayed!! The order you list the /Lf fields in /Lxlo: determines the 
order they will be listed when the specific option is active. See usage 
examples in examples.txt. It is usually advisable to have F last because files 
have variable lengths. Also M position is a don't care, see /Lfm.

/Lxmf:  []         Lora miscFlags  [123456789CDFHINPQRSTWYZ]
This option is a collection of many LORA options affecting miscellanous flags. 
Most Users may never need to use. Most are related to /Lrrs option. Summary 
follows:
    '/Lxmf:' is off
    1 list numOfEntries
    2 do NOT list numDirs
    3 do NOT list numFiles
    4 do NOT force tot EaBytes
    5 do NOT force tot (file) bytes.
    6 do NOT list hintstring
    7 do NOT list date/time in heading line of /Lrrs1 and /Lrrs3
    8 do NOT list attrib    in heading line of /Lrrs1 and /Lrrs3
    9 do NOT list ':>'      in heading line of /Lrrs1 and /Lrrs3
    C if effective /Lfz0 force compress eaBytes sum line format, does not
      override /Lxmf:4; overrides /Lxmf:Y
    D show directory info on final total if gt> or GT> would hide it (if any)
    F force full path on /Lrrs3(if possible)
    H same as 6 but don't list in heading line either (/Lrrs1 and /Lrrs3)
    I do NOT indent /Lrrs heading label based on /Lfi setting
    L less info on DI> with Drvs: when /Lrdi5 and more than 1 drive
    N eliminate first blank line on start of /List: in each report
    P do NOT list pathname supercedes all
    Q do NOT use space shim on /Lrrs heading line (based on /Lfq setting)
    R force relative path overrides /Lxmf:F
    S force standard order, easize then size does not try to align easize 
      and size fields (if any)
    T force t>> or T>>, some info may be redundant on gt> line
    W wrap line on dir Info
    Y on single dir requests, do NOT change #dir or eabytes field size
    Z listCurDirEas when /Lrrs1 or /Lrrs3 if the easize is non0 for cur Dir
Options:1,2,3,4,5,6,C,D,F,P,R,S,T,W Y apply to summary line during options 
/Lrrs2 thru /Lrrs4. One may also append to an existing '/Lxmf:' option via 
'/+Lxmf:'. Option 'C' reference to compress eaBytes code, refers to a 4 
character field which can contains a compressed format for the EA bytes size.
Under a 1000 bytes its the actual number, over that its coded, with K for 1000 
byte units, and M for megabyte units, etc. 

/Lxo:   [GN]       alias for '/o'; see '/o' option.

/Lxpo:  [N]        LORA* Primary order: [N|AR|DR|NX|AX|DX|AF|DF|*OFF| ...]
This is an extremely powerful option. It decides if multiple directories in a 
single request or over multiple requests should be keep separate or merged. It 
allows ordering (sorting) beyond the current directory, i.e. orderng by the 
largest to smallest size file over all requests/directories given, YOU CAN'T 
DO THAT WITH DIR!!!! As well as other fields. Out of the box CSSDIR default 
keeps the ordering contained within a directory with a setting of /Lxpo:N. A 
summary of the available settings follows:
  N  merge no  reqs (reqs = requests)
  AR merge all reqs by relative path
  DR merge drv reqs by relative path
  NX merge no  reqs/ignore dir tree when ordering
  AX merge all reqs/ignore dir tree when ordering
  DX merge drv reqs/ignore dir tree when ordering
  AF merge all reqs using full path
  DF merge drv reqs using full path
  *DUPS-ASC find duplicate files in ascending size order;  /o is ignored
  *DUPS-DES find duplicate files in descending size order; /o is ignored
  *OFF  - don't do any type of ordering, also /o setting is ignored
One should use the suboption *dups-asc or *dups-des with at least options 
/Fcrc:y and possibly the /Ecrc:y as well as use the /Lfc and /Lfb options in 
determining the files likely hood of really being a duplicate. /Lxpo:*DUPS-DES 
reverses the sort to be descending by file size. Options: N,DR,NX,DX,DF can 
append an 'L' to order by drive or 'U' by unc name alpha order. /Lxuf:  
filtering ignores /Lxpo: settings. Also currently all overlapping file matches 
during multiple requests il-regardless of /Lxpo: setting are tossed but 
warnings maybe given based on /Lanu:. [Please see (L.) Hints, tips, issues and 
caveats section: about duplicate files]. Also see /$dups$/ and /$noCrcDups$/ 
in included cssdir.cfg file.

/Lxrst: [0]        LORA* RequestSumType;
This option decides what type of requested summary the user will get if /Lrrs 
is non zero. The default out of the box CSSDIR setting for this option is 
/Lxrst:0 which will cause a directory type summary if the /Lxpo: option does 
not contain an 'X' otherwise it will do a request type. The definition of a 
request type means it is not dependent on the files listed in a directory 
based order. The generation of the 1 (one) line summary information is based 
on the /Lxpo: setting and/or the user requested dirspecs. To force only a 
request type only summary use '/Lxrst:1'. A summary of available settings 
follow:
  0=directory type summary if possible else request type
  1=request type only
  Dir summary type is possible if /Lxpo: does NOT contain an 'x', *OFF,   
*DUPS-ASC, or *DUPS-DES.

/Lxuf:  [*OFF]     LORA* Unique file settings /Lxuf:[KDSCZBA-]           
    '/Lxuf:' is alias for /Lxuf:KDSCZBA    
    K compare relpath named files CaseSensitiveName 
    D compare relative path named files date              
    S compare relative path named files size              
    C compare relative path named files CRC               
    Z compare relative path named files easize            
    B compare relative path named files eacrc             
    A compare relative path named files attrib            
    - ignore specified following field              
Use /Lxuf:-D-S-C-Z-B-A for unique filenames only. Use -K to also exclude if 
case of filename (and extension) portion is different. Use *OFF to shut off; 
Also see /Lxufao: when using A above.

/Lxufao:[]         LORA* Unique file attribute option /Lxufao:[ADSHR-]
This option is only referenced when used in conjunction with /Lxuf:A[DSHR-]
   '/Lxufao:' is default and alias for /Lxufao:ADSHR
    A consider Archive   bit
    D consider Directory bit
    S consider System    bit
    H consider Hidden    bit
    R consider Readonly  bit
   - ignore following bit field
If one uses '/Lxufao:-A' then the archive bit is ignored in determining if a 
file is unique however the directory attribute bit (D), the system attribute 
bit (S), the hidden attribute bit (H) and the readonly attribute bit (R) are 
still considered in determining if a file is unique and to be listed.

/o      [GN]       LORA* Order: /o /o[:][GNEDSZRFJ-]                        
Similar to cmd.exe's dir /o options but with a few significant enhancements.
Especially when combined with option '/Lxpo:'.
     G group directories first                       
     N sort by filename (includes extension)         
     E sort by extension                             
     D sort by date and time                         
     S sort by file size                             
     Z sort by easize                                
     R sort by reference number
     F order by full filespec less DrvLtr/UNC name
     J order by relative filespec
     P order by search count matches (/Sch:)
Option F and J are allowed with any /Lxpo: option, However if /Lxpo: does NOT 
contains an 'X' or a 'R', the effect is effectively the same as ordering by N.
(Since /Lxpo: already has decided that.) '/Lxo:' is an alias for /o.

**** other related info ****
----------------------------
default /Lxlo:QIXDTHAZBSCUPNLRFM (Layout of horizontal fields)  ****
desc:  sp ind ### dat tim  hs att esz ecr siz fcr  uq sch  fn  dl  rn fil '\'
 opt: Lfq Lfi Lfx Lfd Lft Lfh Lfa Lfz Lfb Lfs Lfc Lfu Lfp Lfn Lfl Lfr Lff Lfm
sets:  10  10  7   6   3   8   6   5   2   5   2   2   2   7   4   8   7   2

All fields can be turned on or off, or reOrdered. Use option '/Lrll' to label 
the fields and '/Lxlh' to show what options are active. See examples 
examples.txt file.

special (shortcut) options available for the '/List:' option
/*   process order with current global settings

/=   set current options to previous order settings, if there is no previous
     order than set them to the current global settings

/1   set all of the following List options to have a setting of one: includes
    /1F (below), /1B (below), and /Lrdi /Lref /Lrgt /Lrhe /Lrlh /Lrll /Lrlp    
     /Lrlt /Lrms /Lrne /Lrnf /Lrns /Lrrs /Lrse /Lrsf /Lrsl /Lrtr /Lrts /Lrzz.
    
/0   same as /1 but reset (set those options to have a setting of zero)

/BD  initialize cssdir options to out-of-the-Box Defaults for Lora options.

/1F  set all of the List field (Lf prefix) options to setting of 1, They are:
     /Lfa /Lfb /Lfc /Lfd /Lff /Lfh /Lfi /Lfl /Lfm /Lfn /Lfp /Lfq /Lfr /Lfs 
     /Lft /Lfu /Lfx /Lfz
   
/0F  same as /1F but reset (set those options to have a setting of zero)

/1B  set all of the List attribute bit options to have a setting of one
     /Lrab /Lrcb /Lrhb /Lrnd /Lrrb /Lrsb

/0B  same as /1B but reset (set those options to have a setting of zero)

/AT  Enables (A)ll (T)otals records, which set includes /Lrdi6 /Lref1 /Lrgt2
     /Lrhe2 /Lrne1 /Lrms2 /Lrnf1 /Lrns4 /Lrse1 /Lrsf1 /Lrtr2 /Lrts1 /Lrzz1 
     and include the effects of /1B suboption above.

Environment variable cssdirDefArgs -is used for your default options 
preferences, if this environment var exists it is first pasted (with exact 
spacing) during processing in front of any user added options of the currently 
invoked CSSDIR command line. And thus the user can still override them on the 
command line with One exception any dirspecs will be appended to (see /Dir:). 
Use 'set cssdirDefArgs=' to your desired defaults settings either in 
config.sys or settable within the command window/shell you will be invoking 
CSSDIR from. You can also adjust the user definable variable /$cssdirDefArgs$/ 
in the active CSSDIR cfg file (usually named CSSDIR.cfg) and if environment 
variable cssdirDefArgs is not set then CSSDIR will paste the /$cssdirDefArgs$/ 
in as the beginning defaults for the current CSSDIR invocation. One can see 
this pasting operation (if cssdirDefArgs or /$cssdirDefArgs$/ is set) with a 
setting of '/Ve:3' or greater.

Environment variable cssdirCfg - if set; It is to contain the filespec of the 
CSSDIR configuration file, usually called CSSDIR.cfg. This configuration file 
is used for your powerful symbolic definitions, see the included sample 
CSSDIR.cfg file. In this file any lines beginning with '/$' define a symbolic 
string that can then be used when invoking CSSDIR. They are expected to follow 
the form /$userVarName$/:setting. See the CSSDIR.cfg file. To see the 
expansion of a symbolic definition setting use '/Ve:2' or greater. i.e. 'Ve:2' 
will show this expansion. Note the user can not define symbolic named 
definitions that start with /$$, these are reserved for automatically 
generated CSSDIR system defined ones. Some automatically generated ones 
include /$$pid$/ to get the process id of this invocation of CSSDIR. Another 
is /$$bdrv$/ which is set to the current active booted from drive, and 
/$$tab$/ is for the tab character (might be useful to use with the /Sch: 
option). /$$VBAR$/ is for the '|' (aka the pipe character or vertical bar). To 
get a full listing of the ones defined use '/Dumpo:A'. These automatically 
generated one's can be handy to use with options /Lrtend: and /Lrtbeg: or with 
/Of:. Symbolic definition names are NOT case sensitive.

Environment variable cssdirTmp - is to contain a directory name that is to 
used for scratch space for option /Ecrc:, it recommended that it should have 
about 15 megabytes of scratch space, Normally no more than 1-2 megabytes is 
ever used and any temp files created should automatically be removed (by 
CSSDIR) when CSSDIR finishes. Use of the /Tdir: option if set overrides any 
setting to cssdirTmp. You can also adjust the user definable variable 
/$cssdirTmp$/ in the active CSSDIR cfg file (usually named CSSDIR.cfg) and if 
environment variable cssdirTmp is not set then CSSDIR will use this setting if 
/Tdir: option is not active.

Environment variable cssdirSkipDrvs - is to contain any drive letters (C-Z) 
you wish skipped if you reference (directly or indirectly) any of the 
following auto generated system symbolic definitions: /$$LclDrvs$/, 
/$$RmtDrvs$/, /$$LclDrvRoots$/, /$$RmtDrvRoots$/. You can also adjust the user 
definable variable /$cssdirSkipDrvs$/ in the active CSSDIR cfg file (usually 
named CSSDIR.cfg) and if environment variable cssdirSkipDrvs is not set then 
CSSDIR will use this setting. Use of cssdirSkipDrvs can be useful to avoid 
reading removable drives etc.

Environment variable cssdirStartup - decides whether to abort or be
silent on scanning drives, when user makes invocation references of auto 
generated symbolics /$$LclDrvs$/, /$$RmtDrvs$/,
/$$LclDrvRoots$/,/$$RmtDrvRoots$/. 
env var cssdirStartup=A (for abort)
env var cssdirStartup=S (continue and be silent)
if cssdirStartup is not set, then give a warning and continue.

Environment variable cssdirMem - is used to adjust a desired setting of the 
maximum number of MEGAbytes for general memory consumption, which may result 
in OS/2 or eComStation in resorting to using virtual memory. Please note if 
you make huge processing requests to CSSDIR, which results in millions of 
files, you should make sure you have plenty of swap space on your OS/2 or 
eComStation swapper drive. Usually you never have to adjust this unless you 
have a server system.

Environment variable cssdirSchMem - is used to adjust a desired setting of the 
maximum number of MEGAbytes for use with the /Sch: option. Usually you never 
have to adjust this. The related /Lasmw: option warning usually only occurs on 
very large data files or binary files.

Environment variable cssdirSymProcessing - one can set this to 'SHOW' which 
will show all translations of any symbolics. Especially useful if you doing a 
number of levels of translations, and don't know why something is translated 
as such or producing an obscure error.
******************************************************************************

(G.) Options Summary Alpha Sorted Table Section:
************************************************
In the following Option table:
A leading '*' denotes options can be used globally as well as specifically 
with the '/List:' option also known as a LORA* option. Each such option can be 
assigned a new global default (by simply using the option outside the /List: 
option) and then specifically overridden within the '/List:' option. For 
instance on the command line you might issue: 
'cssdir /Lff1 /Lfs1' 
To specifically override the default for a given option; Use the option in 
conjunction with the '/List:' option and place the given option immediately 
(with no spaces) against the /List: option.i.e. '/List:/*;/Lfs2', would use 
all the other defaults but would now override '/Lfs1' with a new setting of 
'2'. You can also override as many other defaults available within the context 
of the '/List:' option such as with '/List:/*;/Lff3/Lfs2/Lfd2'.

A leading # denotes options can be used globally as well as specifically 
within the context of the /Dir: option, also known as a DORA* option. Each 
such option can be assigned a new setting (overriding the default setting) and 
then specifically overridden within the explicit /Dir: option. For instance on 
the command line you might issue: 
'cssdir /Wc:*.cmd;*.exe f:\'.
To specifically override the default for a given option, Use the option in 
conjunction with the /Dir: option and then append the option (with no spaces) 
to override the default. i.e. '/Dir:./Wc:*.txt',  this would use all the other 
defaults but would now override '/Wc:' with the new adjusted setting of 
'*.txt' applied to the current directory search. Full command invocation: 
'cssdir /Wc:*.cmd;*.exe /Dir:./Wc:*.txt  f:\' would search for *.txt files in 
the current directory and *.cmd and *.exe in the f:\ dir. You can also 
override as many other defaults available within the context of the '/Dir:' 
option similarly such as with '/Dir:c:\/a-R/Wc:*.c/Srs:1,$/Dr:2003'.
             
a leading '/' denotes options only available on a global basis or NORA option, 
i.e. NORA options are neither DORA* or LORA* options.

Option table:
-------------
# = also can override within /Dir:  option context, aka DORA*
* = also can override within /List: option context, aka LORA*
/ = available only on global setting, aka NORA* 
also -h and -hx for help and eXtended help

Options sorted alphabetically follow:

option    default   decription
 -h                 alternative way to display help
 -hx                alternative way to display eXtended help
 /00                zero normal output options;
 /?                 alternative way to display help
 /?x                alternative way to display eXtended help
 #a      []         attr: /a /a[:][ADSHR-*$]
 /b      [0]        0=off 1=on; /b or /b1= /Bf1; with /s its /Bf3
 /BD                initialize cssdir options to out-of-the-Box Defaults
 /Bf     [0]        Bare /Lff fld
 /Ce     [0]        Combine stderr to stdout; useful for 'more' 1,2,3
 /Daws:  [0]        weekStart day  0=Mon,1=Tue,2=Wed,3=Thu,4=Fri,5=Sat,6=Sun
 /Dir:   [.]        directories
 /Dumpo: [N]        dump options settings Y,N,A=all S=A+sort B=brief ..
 /Ecrc:  [N]        compute Ea CRC  Y,N
 /f      [0]        0=off 1=on; /f or /f1 is alias for /Bf3
 /Fcrc:  [N]        compute file CRC Y,N
 /Foo:   [0]        foundOutputOption  1=found and totfound 2=totfound only
 /h                 display help
 /hx                display eXtended help
 /Laifs: [L]        List/Abort if invalid filespec/dirspec(s)  A,L,Y
 /Lamcd: [A]        List/Abort mixedCase dup filespecs found   A,  Y
 /Lanf:  [L]        List/Abort if no (qualified) files found   A,L,Y,0
 /Lanu:  [L]        List/abort non unique file names found     A,L,Y,0
 /Lasfw: [L]        List/abort search file warning             A,L,S,T,Y,Z,0
 /Lasmw: [L]        List/abort /Sch: temp memory exceeded warning A,I,L,S
 
** /List: displayable field  (Lf) options **
             *Lxlo: ='master' on/off switch of Lf options, see below)
 *Lfa    [5]        Attribute        1=t----z 2=t-d---z 3=dir 4=txz 5=*z
 *Lfb    [0]        eaCrc
 *Lfc    [0]        fileCrc
 *Lfd    [1]        Date             1=mm-dd-yy; 2=yyyy-mm-dd 4=yyyymmdd
 *Lff    [5]        FileSpec         1=relFSpec 2=relReqPath 3=fullSpec
 *Lfh    [2]        hintString       format of hintString 4=[DCC(+|-)SHC,DH]
 *Lfi    [0]        Indent           1=4spaces 2=8sp 3=12sp 4=16sp ... 9=36sp
 *Lfl    [0]        dir Level        1=level 2=RelativeLevel 3=1+2
 *Lfm    [1]        dir flag         1=trailing \
 *Lfn    [0]        fileName         1=name.ext 2=1 format 3=1/ 4=2/  ...
 *Lfp    [0]        Sch Cnt
 *Lfq    [2]        space shim       0=off 1=1space 2=2space ...9=9space
 *Lfr    [0]        Reference Num    1= norm 2=1+; 3=1+, 4=2+, 5=1b62 6=2b62
 *Lfs    [3]        fileSize         1=with <DIR>; 2=numeric; 3=1+, 4=2+,
 *Lft    [1]        Time             1=hh:mm*  ; 2=hh:mm:ss  ;
 *Lfu    [0]        Unique file      1=on
 *Lfx    [0]        number entry     1=8digits 2=7dig 3=6dig 4=5dig 5=4dig 6=
 *Lfz    [0]        EaSize           1=regular; 2=1+,
 /List:  [/*]      list of orders

** /List: displayable record (Lr) options **
 *Lrab   [0]        ArchiveBitSet
 *Lrcb   [0]        AllClearBits
 *Lrdi   [0]        Drive info       1=FS 2=US 3=T 4=1+2+3 5=TotOnly 6=All ..
 *Lref   [0]        non0 EasizeFiles
 *Lrgt   [2]        GrandTotal       0=off 1=as needed 2=always
 *Lrhb   [0]        HiddenBitSet
 *Lrhe   [0]        hiddenSysEntries 1=dirs 2=all
 *Lrlh   [0]        ListingHead      1=head 2=tail 3=both
 *Lrll   [0]        listingLabel     1=head 2=tail 3=both
 *Lrlp   [0]        ListOptionProc   1=head 2=tail 3=both
 *Lrlt   [0]        /List: ProcTime for the cur list entry
 *Lrms   [0]        warn/err msgs    1=non zero 2=always (also in gt>/GT>)
 *Lrnd   [0]        NumDirectories
 *Lrne   [0]        NumEntries
 *Lrnf   [0]        NumFiles
 *Lrns   [0]        numEntriesSrched 1=filesB4Sch 2=1Always 3=bytes 4=3Always
 *Lrrb   [0]        ReadonlyBitSet
 *Lrrs   [3]        Request summary  1=Lab+details 2=details+tot 3=1+2 4=tot
 *Lrsb   [0]        SystemBitSet
 *Lrse   [0]        SumEaSizes
 *Lrsf   [0]        SumFileSizes
 *Lrsl   [0]        shorthandList    ; list codes for basePath of dirSpec
 *Lrtbeg:[]         listTitle        ; for multiple lines; #=cr/lf
 *Lrtend:[]         ending listTitle ; for multiple lines; #=cr/lf
 *Lrtr   [0]        hidSysTrEntries 1=dirs 2=all
 *Lrts   [0]        TotalSizes       ; filelengths + eaSizes
 *Lrzz   [0]        zzDirs           1=listTotal 2=1+ details

** /List: other (Lx) options **
 *Lxcs:  [1]        /Lr commas       0=no commas  1=commas
 *Lxkt:  [0]        K trip pt        0=regular  1=dir like
 *Lxlo:  [QIXDTHAZBSCUPNLRFM] Lf layout   /Lxlo:[ABCDFHILMNPQRSTUXZ]
 *Lxmf:  []         Lora miscFlags   [123456789CDFHINPQRSTWYZ]     ...
 *Lxo:   [GN]       /Lxo: is an alias for '/o';  see /o
 *Lxpo:  [N]        PrimaryOrder: /Lxpo:[N|AR|DR|NX|AX|DX|AF|DF|*OFF|...]
 *Lxrst: [0]        RequestSumType; 0=dir?avail/request 1=reqType summary
 *Lxuf:  [*OFF]     UniqFile /Lxuf:[KDSCZBA-] '/Lxuf:' = /Lxuf:KDSCZBA
 *Lxufao:[]         UniqFile attrib /Lxufao:[ADSHR-]

 /Mf:    [-X-R-2]   Miscellaneous Flags /Mf:[BCZYXR2-] '/Mf:'= /Mf:BCZYXR2
 /Nr:    [0]        noReadAccess:1=prelist 2=exc 3=2 silent 4=inc 5=4 silent
 *o      [GN]       Order:/o[:][GNEDSZRFJP-] 
 /Of:    [stdout:]  outFile[/ANOMTY] A=append N=new O=overwrite M=mult T=time
 /Pfof:  [stdout:]  PfoutFile[/ANOMTY] A=append N=new O=overwrite T=time
 /Pf     [0]        PreviewFile rec 1=All 2=1 noAttr# 3=#fspec 4=fspec ...
 /Pi     [0]        ProcessInfo rec 1=console 2=stderr 3=stdout 4=/Of: ...
 /Pt     [0]        ProcessTime rec 1=tot 2=gather 3=1+2
 /Py:    [*]        priority *=noChange 0=lo 40=hi 0-31 idle 32-40RegClass
 /Register          registers cssdir; i.e. 'cssdir /Register'
 #s      [CUR]      subdir NO,CUR,ALL /s[nn][X(h|s|hs|sh)] (nn=maxDepth 2-99)
 /Sch:   []         searchString /Cstr /Istr both=+ either=$
 /Scho:  [1]        SearchString hits 1=line summary 2=1 + details
 /Soo:   [1]        SearchOutputOption 1=showNondefault 2=showMult 3=always
 /Src:   [ALL]      file Size Range to compute CRCs
 #Srd:   [ALL]      range of dates: -n,all,curNweek,curNmonth (N = 1 to 13)
 #Srs:   [ALL]      range of file Size: all, $=no high limit i.e. /Srs:1000,$
 #Srz:   [ALL]      range of Ea   Size: all, $=no high limit i.e. /Srz:1,$
 /Tdir:  []         Temp directory; Used with /Ecrc:y
 /Tis    [0]        curTimeStamp   0=off 1=timeStamp
 /Ve:    [2]        verbose level 0=off 1=basic 2=SYM translation 3=DefArgs ..
 /Vn:    [1]        display version 0=off 1=basic 2=all
 #Wc:    []         wildcards
 /Xr1:   []         eXclude files with Suffixes/[/prefix/ ...] ...
 /Xr2:   []         eXclude files with Suffixes/[/prefix/] for computing CRCs

**** default /Lxlo:QIXDTHAZBSCUPNLRFM (Layout of horizontal fields)  ****
desc:  sp ind ### dat tim  hs att esz ecr siz fcr  uq sch  fn  dl  rn fil '\'
 opt: Lfq Lfi Lfx Lfd Lft Lfh Lfa Lfz Lfb Lfs Lfc Lfu Lfp Lfn Lfl Lfr Lff Lfm
sets:  10  10  7   6   3   8   6   5   2   5   2   2   2   7   4   8   7   2
******************************************************************************
 
(H.) Detailed CSSDIR license feature comparisons section:
*********************************************************
It is illegal to use CSSDIR or related utilities beyond the 30 days (from 
original first use of a version) unless you purchase a shareware or 
professional registration from Curtis Systems Software P.C. The following 
Options in the non registered and unlicensed version are unavailable or 
un-adjustable: /Src:, /Py:, /Srz:, /Srs:, /Dir:@, @, /Xr2:@, /Xr1:@, /Lxufao:, 
/Ecrc:, and no offline access to snapshot compare (cssddiff). The following 
options are limited: /Srd: and /Srd: (to one range), /Wc: (to two wildcards) 
in non DORA* mode, and /Wc: (to one wildcard in DORA* override). No cssmon 
query capability. It has a startup unregistered license notice time delay from 
time to time, and is limited to filtering output results not to exceed 2499 
file/directory entries. Only 1 report per invocation with the /List: is 
allowed. Has NO support.

Registered Shareware license: Has everything the PROfessional version has with
the following exceptions: no support for /Py: (setting priority of CSSDIR), 
/Dir:@ or @ (read dirspecs/filespecs from a file), /Xr2:@ (read exclude CRC 
suffixes from a file), /Xr1:@ (read exclude suffixes from a file), no offline 
snapshot compare (cssddiff) option, limited to two reports per invocation with 
the /List: option. No cssmon query capability. Limited to filtering output 
results not to exceed 99,999 file/directory entries. It has Email support.

Registered PROfessional version: All features are available, that's a bunch. 
Email support questions are put at the top of the list of other non 
PROfessional licensed users. It also contains the powerful /Dir:@, /Xr2:@, 
/Xr1:@ and access to snapshot compare options with multiple reports (all in 
one pass) with the /List: option. No limit on output results (except with 
regards to OS/2 or eComStation virtual memory management) having to do with 
the number of file/directory entries. We have tested it with over 2.5 Million 
such entries on eComstation 1.03 during one invocation. And it has query 
access of active CSSDIR processes via the cssmon utility. Please note until 
further notice the snapshot compare option (cssddiff) is currently available 
only upon special request by a Pro license holder.
******************************************************************************

(I.) Error/warning/information message codes section:
*****************************************************
Text after each CSSDIRxxx: code is representative of the type of 
error/warning/information and MAY NOT match exactly when an error is produced 
and may also be adjusted in future program revisions. 

Please note that if you have an error on the stderr stream (and perhaps with 
stdout stream when using the /Ce1 and /Ce2 option), you may not see an error 
message but the return code from CSSDIR should be appropriately set; During 
Batch invocations it is highly recommended to check exit codes. This is 
especially important if your redirect output to a disk that is nearly full or 
could become FULL during CSSDIR output operations.

CSSDIR Version 3.0 messages:

CSSDIR102: trial or beta software test period has expired, visit web site
CSSDIR103: error reading CSSDIR configuration file, usually named CSSDIR.cfg
CSSDIR104: error using a DORA* requires explicit use of '/Dir:
CSSDIR105: Illegal option combination
CSSDIR106: user specified output file (/Of: or /Pfof:) warning or error msg
CSSDIR107: can not locate eComStation or OS/2 eautil program
CSSDIR108: env var cssdirTmp or /$cssdirTmp$/ or /Tdir: needs a valid setting 
CSSDIR109: no directory specified or other dirspec errors 
CSSDIR110: command line args processing error
CSSDIR111: misuse of '~' (tilde) escape character detected
CSSDIR112: misuse of '/List:' option
CSSDIR113: problems when using the '@' character or options
CSSDIR114: misuse of '/Sch:' option
CSSDIR115: illegal characters found; wildcards not allowed in exclude options
CSSDIR116: user hit ctrl-c or ctrl-break causing CSSDIR to abort
CSSDIR117: internal issue; probably out of memory
CSSDIR118: error writing to outfile; disk may be full!
CSSDIR119: error deleting CSSDIR created temporary files
CSSDIR120: internal error while computing CRC's
CSSDIR121: not logically possible but found internal error
CSSDIR122: environment vars cssdirSchMem or cssdirMem outOfRange
CSSDIR123: dir info util failed unexpectedly
CSSDIR124: error writing to stderr: (probably redirected and disk full)
CSSDIR125: internal logic error; please report
CSSDIR126: internal logic error; please report
CSSDIR127: aborting due to no files found for dirspec(s) [/Lanf:Y  ,/Lanf:A]
CSSDIR128: aborting due to invalid filespec/dirspec(s)   [/Laifs:Y ,/Laifs:A]
CSSDIR129: commandline contains illegal characters 
CSSDIR130: user hit ctrl-c during searching a file for search string 
CSSDIR133: can't register missing a valid key file
CSSDIR134: license was successfully registered
CSSDIR135: user did not agree to terms and conditions
CSSDIR136: license registration failed
CSSDIR137: register pro license required
CSSDIR139: registered license required
CSSDIR142: aborting due to non unique filespecs detected [/Lanu:Y , /Lanu:A]
CSSDIR143: aborting due to mixedCase dup filespecs found [/Lamcd:Y, /Lamcd:A]
CSSDIR144: aborting (during /Sch:) due to:
       BinaryFileDetected or LineLenTooLong [/Lasfw:Y or /Lasfw:L]
CSSDIR145: aborting (during /Sch:) due to:
           Temporary string storage exceeded [/Lasmw:A]

CSSDIR150: Warning: Can't find: CSSDIR configuration file (usally CSSDIR.cfg)
CSSDIR151: invalid filepath/dirpath Spec [/Laifs:L or /Laifs:Y]
CSSDIR152: noReadAccess of listed file   [/Nr:1 or /Nr:2 or /Nr:4]
CSSDIR153: ErrorOpeningFile or ErrorReadingFile during searching (/Sch:)
CSSDIR154: error from eautil
CSSDIR155: no (qualified) files found  [/Lanf:L or /Lanf:Y]
CSSDIR156: list files that CRC weren't computed due to  /Src:   [/Mf:R]
CSSDIR157: list files that CRC weren't computed; >=2 gig fsize  [/Mf:Y]
CSSDIR158: list files whose    data can't be read for CRC calc  [/Mf:C] 
CSSDIR159: list files that are 2 gig or more in filesize        [/Mf:2] 
CSSDIR160: list files whose ea size can not be obtained         [/Mf:Z]
CSSDIR161: list files whose ea data can't be read for CRC calc  [/Mf:B]
CSSDIR162: list files whose CRC weren't computed; due to  /Xr2: [/Mf:X]
CSSDIR163: warning nonunique filespec found [/Lanu:L or /Lanu:Y] 
CSSDIR164: unregistered version detected
CSSDIR166: warning (during /Sch:) due to:
      BinaryFileDetected or LineLenTooLong [/Lasfw:L ,S ,Y]
CSSDIR167: warning (during /Sch:) due to:
           Temporary storage exceeded [/Lasmw:L ,S]
CSSDIR168: warning using /Lfh0 with multiple requests while /Lff1 or /Lff2
           is active may lead to file location ambiguities, try a non zero
           setting for /Lfh
CSSDIR199: internal error; should never experience; you probably have
           a flakey piece of hardware; contact CSS for your next system
******************************************************************************

(J.) CSSDIR cfg file and Customization section:
***********************************************
The CSSDIR cfg file is a file which is read at CSSDIR startup time, and 
contains all the user definable Symbolic codes to CSSDIR options settings. It 
is a very handy way to recall and then re-Invoke commonly used CSSDIR options 
settings. The files format currently has 4 types of lines. One, blank lines 
are ignored, two comment lines which are lines that begin with a ';' which are 
also ignored, three user definable symbolic codes, four the user definable 
symbolic codes maybe continued on multiple subsequent lines (see cssdir.cfg 
for details and examples). The format of a symbolic is of the form 
/$uservar$/:options definition. i.e.
/$SortDriveC_bySize$/:c:\ /s /Lxpo:ax /os /Lrtbeg:"Drv C sorted by Size"

In this example, one could simply use

cssdir /$sortDriveC_bySize$/   (which translates into the following line)
cssdir c:\ /s /Lxpo:ax /os /Lrtbeg:"Drv C sorted by Size"

As time goes on you can add many shortcut custom codes. Currently three user 
definable Symbolics codes, /$cssdirTmp$/, /$cssdirDefArgs$/ and 
/$cssdirSkipDrvs$/ have special meaning in a CSSDIR cfg file. 

The symbolic code /$cssdirTmp$/ is referenced as the temporary scratch 
directory if it is defined and both the environment variable cssdirTmp is not 
set and the option /Tdir: is not active. 

The user definable symbolic code /$cssdirDefArgs$/ value is pasted immediately 
after CSSDIR (with only one space between CSSDIR and cssdirDefArgs value) and 
used if it is set AND environment variable cssdirDefArgs is not set.

The symbolic code /$cssdirSkipDrvs$/ is user settable to indicate to cssdir 
which drives it should skip during the auto generated system symbolic codes 
/$$LclDrvs$/ and /$$RmtDrvs$/. 

One may also reference any environment variable as a definition for a user 
definable Symbolic code. The format to reference an environment variable is 
/$$$envVar$/ (has 3 leading '$'). So to reference environment variable tmp, 
use /$$$TMP$/. One may also reference environment variables on the command 
line via this method /$$$envVar$/. Please note that /$cssdirTmp$/ is initially 
set to /$$$tmp$/ by default. If you do not wish CSSDIR to write scratch info 
to that directory, please change appropriately or use /Tdir: option. 

CSSDIR also provides a number of automatically generated symbolic definitions 
one can reference, items such as the current time, date, current CSSDIR 
process's ID, and so on. They follow the format of /$$autoGenerated$/ (has 2 
leading '$'). For instance to get CSSDIR process's ID use /$$PID$/, this may 
be handy in generating when combined with /$$TIME1$/ unique files name to be 
used with the /Of: option. To get a full listing of the ones automatically 
generated by CSSDIR (at invocation time) use 'cssdir /Dumpo:S' (along with 
other options and system specific information CSSDIR has detected).

(K.) Other Utilities section:
*****************************
The included cssmon.cmd utility is a classic rexx script which can provide 
monitoring status of any active CSSDIR.exe processes. Simply invoke cssmon.cmd 
and it will interactively look for all active CSSDIR processes on the local 
machine. If there is more than one active it will query you to select the one 
you wish to monitor. If there is only one it will immediately provide updates 
approximately every 1 to 2 seconds. One may also monitor remote CSSDIR 
procesess on other machines if you have the processId of the active CSSDIR 
process on the remote machine. In this case invoke the command 'cssmon.cmd 
NAME=\\server1\pipe\cssdirPID', where \\server1 is the servername and PID is 
the decimal process ID. For each CSSDIR process, only one cssmon.cmd can query 
it for update information at a time. Also this query capability is only 
available with a PRO version license. This can very handy on very long running 
CSSDIR requests.

The included cssrss.cmd utility is a classic rexx script which can sort cssdir 
output which used options: /Lrrs2 or /Lrrs3 or /Lrrs4. It allows sorting 
directory totals fields. So first one generates a output file with cssdir 
which includes /s option and /Lrrs2 or /Lrrs3 or /Lrrs4, next you feed this 
file into cssrss.cmd to sort the dir summaries lines. For more information see 
cssrss.cmd or simply invoke cssrss.cmd to see usage. 

(L.) Hints, tips, issues and caveats section:
*********************************************
Tip: Dir versus CSSDIR difference: cmd.exe's 'dir /a /s' does NOT list any 
entries that are found in a hidden directory only the immediate hidden 
matching entries, whereas 'cssdir /s' will list all matching entries even ones 
in hidden directories.

Tip: Dir versus CSSDIR difference: cmd.exe's dir does not include hidden and 
or system entries by default, starting with version 3.x cssdir will NOW by 
default include all files including hidden and/or system ones.

Tip: If a dirspec you explicitly request contains the following characters '~' 
or '@' or ';' you may escape the normal controlling effects by escaping them 
with a preceding '~'. i.e. cssdir filenam~~.txt (searches for 'filenam~.txt'.
cssdir feb~;mar~;apr.report (searches for 'feb;mar;apr.report'.
cssdir ~@fileA (searches for '@fileA'). You may also want to escape control 
characters during the /Sch: option, if you want to search for '$' or '+' then
a leading '~' must be used, i.e. '~$' or '~+' (less the leading and trailing 
').

Tip and caveat: you may wish to use the attached cssdirm.cmd rexx script to 
pipe any of your CSSDIR invocations through the eComStation or OS/2 more.com 
or replace with a more powerful paging program. It can be handy to view the 
online CSSDIR reference help by issuing 'cssdirm /h' or extended help via 
'cssdirm /hx'. Another suggestion is to look into using eComStation or OS/2's 
epm, one can buffer a sizable amount of data to scroll back through as well as 
save. Still another is to use /Of: and use a unix style tail program on the 
named output file in the /Of: option. Also in release 3.0 we've included a 
super shortcut for invoking cssdir via rexx script d.cmd and dm.cmd (which 
calls cssdir.exe and cssdirm.cmd respectively), some users may wish to delete 
these because they conflict with other utils, i.e. d.exe or another d.cmd. 
Both dm.cmd and cssdirm.cmd will skip piping to more if the invocation has 
parameters and ends with ' -' (a space followed by a '-').

Caveat: Use of the /Sch: option on binary files (or files that contain 
characters outside the range of ASCII values 32-127 decimal) may not detect 
search strings as requested, also applies for files that have lines lengths 
that exceed normal line lengths. You can monitor these issues with the /Lasfw: 
option. If you still want to enable detection but have problems with a 
specific file, please see the /Xr1: option.

Caveat: Duplicate finds are POTENTIAL duplicate files, even running a 32bit 
CRC on files does *NOT* absolutely guarantee an exact sized set of files 
contents to be identical. However the probability of them not containing the 
same contents is very very very small perhaps the odds are thought to be as 
small as over 4 billion to 1 that the contents of the files are in fact *NOT* 
the same yet both the files CRC, and files size produce the same result or 
other user select-able comparison options. However if the CRCs are different 
and CSS's CRC calculations are not in error (which is thought to be extremely 
slim), then the files are in FACT different. Further if the files are in fact 
the same, they may still be necessary in different directory trees, etc. If in 
doubt do NOT delete those files, seek a qualified knowledgeable systems 
professional to save yourself or your company unnecessary grief and panic 
(which can be common using some other environments) before just deleting those 
in question files. As always before you purge any files you're not ABSOLUTELY 
sure of, you should backup, backup and backup BEFORE you smoke something you 
wish you had a backup for. Further if you have mapped multiple ways of listing 
directory entries and then invoke CSSDIR to find such same named files, CSSDIR 
does *NOT* decipher they are in fact the same physical file. And if in fact 
they were the same file and you deleted what you thought was a duplicate file 
you would have blown away all others that were potential matching duplicated 
files mapped under different "aliased" names as well which actually really 
pointed to the same file! These duplicate or many "aliased" files will also 
produce incorrect used and other total fields.

caveat: The concern of potential duplicate logic explained above also can have 
an effect on *NOT* detecting unique files when using the /Lxuf: option, but 
many professionals in the industry would agree the odds are very very small 
and extremely rare but I emphasis still possible but highly improbable. A most 
definite way but one that can be very expensive, especially on a large set of 
large files in terms of time, in making absolutely sure is to do a byte by 
byte compare of all files in question, including their EAs. This may be added 
as a feature in the future. If you need this now or desire it, private 
consultation with CSS may be able to add it much sooner than later.

caveat: remote access via UNC or via a remotely mapped drive with EXT2 (linux 
partition) OS/2 non-IBM third party IFS driver does not work reliably, for 
that matter it also does not work reliably with cmd.exe's dir either. Basic 
tests locally with a mapped drive (via only EXT2 IFS driver) (and also not 
remotely) appear to work both with dir and CSSDIR. However if one references 
either via dir or CSSDIR neither handle locally accessed UNC accesses 
properly. Using any EXT2 accesses with CSSDIR and associated software or the 
reliability thereof is not supported and is totally at the user's own risk.

caveat: NDFS IFS driver (netdrive) file access is in the preliminary testing 
phase. An issue has come up that if such ftp accessed systems allow the same 
name to be used for files that just differ in case (such as Unix), CSSDIR will 
at this time consider such a file as a duplicate in name and flag it if the 
/Lmcd:A or /Lmcd:Y option is set and then abort. Currently any issues with 
invoking CSSDIR on or to references for dirspecs/filespecs on NDFS mounted 
drives (directly or indirectly, such as remapped as a LAN drive via a network 
share) are NOT supported until further notice. (If you need this type of 
support, CSS private consultation may be available.)

caveat: accessing files on a JFS file system directly or via a UNC or mapped 
LAN drive or possibly other file systems of greater than or equal to 2 (two) 
gigabytes in size files, AND do NOT have appropriate fixpacks and kernal 
installed will get an incorrect filesize. In our test cases we have found that 
 a bogus size of 1 byte is reported (this also happens with cmd.exe's dir). 
*****************************************************&************************

(M.) Definitions/references section:
************************************
CRC - cyclical redundant checksum, and data integrity algorithm that aids in 
detecting data corruption.

CSS -Curtis Systems Software P.C. has extensive experience in the development 
of many industries with software engineering and working with hardware 
designers, with 20 years of experience, 15 years in expert real time and 
embedded systems. As well as over 10 years of OS/2 and eComStation use and 
development experiences. We are committed to quality, value, truth, and the 
pursuit of excellence, visit www.curtisSystemsSoftware.com. 

CSSDIR - Curtis System Software Directory Program, the most powerful directory 
or cataloging program for eComStation and OS/2 Warp 4 known to exist.

CSSDIR cfg - CSSDIR configuration file, which contains symbolic definitions 
which effectively provide a convenient abbreviated way to reinvoke CSSDIR with 
out relooking up a potentially complicated options setting sequence. By 
default unless cssdirCfg environment variable is set, its name is CSSDIR.cfg. 
If this file exists in the current directory it is used otherwise it will be 
looked for in the actively invoked CSSDIR.exe's directory. If it can not be 
found a warning will be issued.

DORA* - a /Dir: option default setting which is (O)ver(R)ide(A)ble. It is a 
default option setting that can be specifically overridden within the context
of an explict /Dir: option. Such DORA* options include /a /s /Srd: /Srs: /Srz: 
/Wc:, i.e. this allows some searches in the same invocation to transverse 
subdirectories while others do not.

hintString: This a coded string which may contain a short hand code as well as 
a uniquely assigned directory coded string, the /Lxpo: setting and a '-' 
denoting no merge was requested or a '+' that one has been requested via the 
/Lxpo: option. See the /Lfh option for more explanation.

LORA* - a /List: option default setting which is (O)ver(R)ide(A)ble. It is a 
default option setting that can be specifically overridden within the context 
of the /List: option. Such LORA* options include: 
/Lfa /Lfb /Lfc /Lfd /Lff /Lfh /Lfi /Lfl /Lfm /Lfn /Lfp /Lfq /Lfr /Lfs /Lft 
/Lfu /Lfx /Lfz /Lrab /Lrcb /Lrdi /Lref /Lrgt /Lrhb /Lrhe /Lrlh /Lrll /Lrlp 
/Lrlt /Lrms /Lrnd /Lrne /Lrnf /Lrns /Lrrb /Lrrs /Lrsb /Lrse /Lrsf /Lrsl 
/Lrtbeg: /Lrtend: /Lrtr /Lrts /Lrzz /Lxcs: /Lxkt: /Lxlo: /Lxmf: /Lxo: /Lxpo: 
/Lxrst: /Lxuf: /Lxufao: and /o. In a nutshell all CSSDIR options that start 
with Lf, Lr, Lx and /o are LORA options enabled.

NORA* - (N)on (O)ver(R)ide(A)ble options - options that are neither DORA* or 
LORA* and only have a maximum of 1 setting per cssdir invocation.

short hand code - aka shcode or SHC, is an assigned code for a given base path 
name and dirspec, usually displayed instead of displaying a base directory 
name. Also can be useful to reBuild a full file spec with these values and the 
relativepath name. [See also options /Lff, and /Lrsl]
 
www.curtisSystemsSoftware.com - website for CSSDIR and other quality products 
and computing services.
  
www.eComStation.biz - International reseller (North America focus) for 
purchasing eComstation and related products.

www.eComStation.com - home of the enhanced and polished version of OS/2, or 
eComStation, packaged by Serenity Systems (www.serenity-systems.com).

www.mensys.nl/indexuk.html - a good source to purchase eComStation and OS/2 
software.

www.os2bbs.com - good shareware source for OS/2 and eComStation, worth 
subscribing to each and every year.
******************************************************************************

(N.) Terms and Agreement Section:
*********************************
TERMS AND CONDITIONS OF SALE, LICENSE AND USE OF CSSDIR (and use before 
purchasing CSSDIR in a trial or "demo" capacity) and associated software, 
"Software" produced and/or distributed by Curtis Systems Software P.C. (CSS). 
This software is protected by United States and International Copyright Laws.
Should any term of this License Agreement be declared void or unenforceable by 
any court of competent jurisdiction, such declaration shall have no effect on 
the remaining terms hereof. Use of this software for any purpose whatsoever 
constitutes your unqualified acceptance of the following statements: 

Curtis Systems Software P.C. (CSS),  the author, makes no warranty or 
representation that the software will be error free. CSS disclaims any 
warranties, either express or implied, including but not limited to any 
implied warranty of merchantability or fitness for any particular purpose.

The user agrees to take full responsibility for the selection of and any use 
whatsoever made of the software.

IN NO EVENT WILL THE AUTHOR BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING 
WITHOUT LIMITATION DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION,
 LOSS OF BUSINESS INFORMATION OR THE LIKE) ARISING OUT OF THE USE OF, 
INTERRUPTION IN THE USE OF, OR INABILITY TO USE THIS SOFTWARE, EVEN IF THE 
AUTHOR HAS BEEN ADVISED OF ANY POSSIBILITY OR LIKELIHOOD OF SUCH DAMAGES. 

I. Customer obligations
A.) Customer assumes full responsibility that this licensed computer software 
(the software) meets the specifications, capacity, capabilities, versatility 
and other requirements of Customer. 
B.) Customer assumes full responsibility for the condition and effectiveness 
of the operating environment in which the software is to function, and for its 
installation.

II. CSS's conditions of Sale
A.) CSS makes no warranty as to the design, capability, capacity, or 
suitability  for use of the Software, except as provided in this paragraph. 
Software is licensed on an "AS IS" basis, without warranty. The original 
Customer's exclusive remedy in the event of a software manufacturing defect, 
is its repair or replacement within thirty (30) calendar days of the date of 
the CSS sales document received upon license of the Software. The defective 
Software shall be returned to CSS or place of purchase with the sales 
document.
B.) Except as provide herein no employee, agent, franchisee, dealer or other 
person is authorized to give any warranties of any nature on behalf of CSS. 
C.) Except as provided herein, CSS makes no express warranties, and any 
implied warranty of merchantability or fitness for a particular purpose is 
limited in its duration to the duration of the written limited warranties set 
forth herein.

III. Limitation of liability
A.) Except as provided herein, CSS shall have no liability or responsibility 
to customer or any other person or entity with respect to any liability, loss 
or damage cause or alleged to be cause directly or indirectly by "Software" 
sold, leased, licensed or furnished by CSS, including, but not limited to, and 
interruption of service, loss of business or anticipatory profits or 
consequential damages resulting from the use or operation of the "Software". 
In no event shall CSS be liable for loss of profits, or any indirect, special, 
or consequential damages arising out of any breach of this warranty or in any 
manner arising out of or connected with the sale, lease, license, use or 
anticipated use of the "Equipment" or "Software". Notwithstanding the above 
limitation and warranties, CSS's liability hereunder for damages incurred by 
customer or others shall not exceed the amount paid by customer for CSSDIR and 
associated Software "Software" involved.

IV. CSSDIR and associated Software License
CSS grants to Customer a non-exclusive, paid up license to use the purchased 
specific version and type of license (Pro or shareware) of CSSDIR and 
associated Software on one computer, subject to the following provisions:
A.) Except as otherwise provided in this Software License, applicable United 
States and/or International copyright laws (whichever is more protective to 
the producer of CSS copyrighted material(s)) shall apply to the Software.
B.) Title to the medium (if any) on which the Software is recorded or stored 
(diskette, CD, etc.) or downloaded is transferred to the customer, but not 
title to the Software.
C.) Customer may not have CSSDIR and associated Software active on more than 
one computer for each license. Further if CSSDIR and associated software is 
made available via LAN or Internet or the functionality thereof, then no more 
than one copy of CSSDIR and associated software per license is legally 
allowed. Also for EACH real or potential CSSDIR simultaneous user, a purchased 
appropriate type of license (PRO or shareware) and version is required.
D.) Customer shall not use, make, manufacture, or reproduce copies of Software 
except for use on one computer and as is specifically provided in this 
Software license. Customer is expressly prohibited from disassembling or 
decompiling the software. Customer is expressly prohibited from using any of 
CSSDIR's documentation and/or nomenclature in other products without explicit 
written permission from CSS.
E.) Customer is permitted to make additional copies of the Software only for 
backup or archival purposes or if additional copies are required in the 
operation of one computer with the Software, but only to the extent the 
Software allows a backup copy to be made.
F.) All copyright notices shall be retained on all copies of the Software.

V. Applicability of Warranty
A.) The terms and conditions of this Warranty are applicable as between CSS 
and Customer for sale of a Software License to Customer.
B.) The Limitations of liability and Warranty provisions herein shall inure to 
the benefit of CSS, the author, owner and or licensor of the Software.

VI. Additional license(s) discounts constraints
Any Company that purchases and retains ownership of one full priced license 
for a given specific version may be eligible for subsequent licenses of the 
same license type and version at a discounted price if the following are met:
1.) license type and version are still available for sale by CSS AND 
2.) additional license will not be resold (license can not be transferred) AND
3.) the additional license(s) is/are for and are to be used exclusively by the 
same individual, company or corporation located at the same physical address.
 
VII. Shareware licensing. 
In event the user has acquired CSSDIR and associated software as in a trial 
use (as to determine it usability) after 30 calendar days from its first use, 
the user must purchase either a CSSDIR PROfessional version or register the 
shareware version at the current shareware pricing for each computer they are 
going to use it on, including section IV C. (see above) or remove it from all 
their computers, and backups, and refrain from using it. Please comply any 
thing less is prohibited, CSS does appreciate your compliance. Thank you.
******************************************************************************

(O.) Acknowledgments section:
*****************************
CSS expresses thanks to all the beta testers, Glenn Hudson (especially for 
versions 2.x and 3.x) for his time, insights, and valuable suggestions. IBM 
for OS/2, and Serenity Systems for eComstation 1.0 and 1.1, thank you Bob St. 
John and Kim Cheung. I also want to thank Roderick Klein (for his 
extraordinary efforts and persistent for making eComstation better), Douglas 
Clark, John Urbaniak, Chip Davis, Jan van Wijk, and Steve Levine, for other 
related discussions and/or emails. And the many people that have contributed 
to helping make eComstation a reality, which aided CSS in developing CSSDIR in 
a stable know what you got day in day out environment. 
******************************************************************************

(P.) Release Revisions section:
*******************************
See relNotes.htm file. 

   (C) Copyright 2003-04 Curtis Systems Software P.C. All rights reserved
******************************************************************************
123456789012345678901234567890123456789012345678901234567890123456789012345678
<end of document>