home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / dwnsrt60.zip / DOWNSORT.DOC < prev    next >
Text File  |  1994-08-28  |  137KB  |  3,630 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.                                                                  DOWNSORT
  19.  
  20.                          Maximus CBCS DOWNload file SORT and List Utility
  21.  
  22.                                               Version 6.0f (OS/2 and DOS)
  23.  
  24.  
  25.  
  26.  
  27.                                                           August 28, 1994
  28.  
  29.  
  30.                                                             Rob Hamerling
  31.  
  32.                                                   Vianen, The Netherlands
  33.                                            Phone: ++31-3473-72136 (voice)
  34.                                                    FIDO-net: 2:512/4.1098
  35.  
  36.                Maximus Download File Sort and List Utility (OS/2 and DOS)
  37.  
  38.  
  39.  
  40.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  41.  
  42.  
  43.  
  44.   CONTENTS
  45.  
  46.  
  47.     1.0 About Downsort  . . . . . . . . . . . . . . . . . . . . . . . . 1
  48.     1.1 Quick start   . . . . . . . . . . . . . . . . . . . . . . . . . 1
  49.     1.2 Registration and Shareware Fee  . . . . . . . . . . . . . . . . 2
  50.     1.3 Warranty  . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
  51.     1.4 Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . 2
  52.  
  53.     2.0 Overview  . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
  54.     2.1 Purpose and Objectives  . . . . . . . . . . . . . . . . . . . . 3
  55.  
  56.     3.0 User's Guide  . . . . . . . . . . . . . . . . . . . . . . . . . 5
  57.     3.1 Initial setup   . . . . . . . . . . . . . . . . . . . . . . . . 5
  58.     3.2 Data Collection   . . . . . . . . . . . . . . . . . . . . . . . 6
  59.     3.3 List Type Selection   . . . . . . . . . . . . . . . . . . . . . 7
  60.     3.4 Data Selection   . . . . . . . . . . . . . . . . . . . . . . . 13
  61.     3.5 List Customisation   . . . . . . . . . . . . . . . . . . . . . 14
  62.     3.6 Miscellaneous report information   . . . . . . . . . . . . . . 18
  63.  
  64.     4.0 Parameter Specifications   . . . . . . . . . . . . . . . . . . 21
  65.     4.1 Commandline parameters   . . . . . . . . . . . . . . . . . . . 21
  66.     4.2 Configuration file Parameters  . . . . . . . . . . . . . . . . 21
  67.     4.3 Compiling the IPF lists  . . . . . . . . . . . . . . . . . . . 23
  68.  
  69.     5.0 Sample of Getting organised  . . . . . . . . . . . . . . . . . 24
  70.     5.1 Downsort   . . . . . . . . . . . . . . . . . . . . . . . . . . 24
  71.     5.2 BinkleyTerm  . . . . . . . . . . . . . . . . . . . . . . . . . 25
  72.  
  73.     6.0 Packaging  . . . . . . . . . . . . . . . . . . . . . . . . . . 26
  74.     6.1 Availability   . . . . . . . . . . . . . . . . . . . . . . . . 26
  75.     6.2 RUN-time material  . . . . . . . . . . . . . . . . . . . . . . 26
  76.     6.3 Source material  . . . . . . . . . . . . . . . . . . . . . . . 27
  77.     6.4 Installation   . . . . . . . . . . . . . . . . . . . . . . . . 27
  78.     6.5 Dependencies and restrictions  . . . . . . . . . . . . . . . . 28
  79.     6.6 Storage and Performance  . . . . . . . . . . . . . . . . . . . 28
  80.     6.7 Problems   . . . . . . . . . . . . . . . . . . . . . . . . . . 29
  81.     6.8 Wishlist   . . . . . . . . . . . . . . . . . . . . . . . . . . 29
  82.  
  83.     7.0 Internals  . . . . . . . . . . . . . . . . . . . . . . . . . . 31
  84.     7.1 Development Environment  . . . . . . . . . . . . . . . . . . . 31
  85.     7.2 Program Organisation   . . . . . . . . . . . . . . . . . . . . 31
  86.     7.3 Main Data Organisation   . . . . . . . . . . . . . . . . . . . 33
  87.  
  88.     Appendix A.  History of changes  . . . . . . . . . . . . . . . . . 36
  89.     8.1 Version 6.0  . . . . . . . . . . . . . . . . . . . . . . . . . 36
  90.     8.2 Version 5.9  . . . . . . . . . . . . . . . . . . . . . . . . . 38
  91.     8.3 Version 5.8  . . . . . . . . . . . . . . . . . . . . . . . . . 39
  92.     8.4 Version 5.7  . . . . . . . . . . . . . . . . . . . . . . . . . 39
  93.     8.5 Version 5.6  . . . . . . . . . . . . . . . . . . . . . . . . . 40
  94.     8.6 Version 5.5  . . . . . . . . . . . . . . . . . . . . . . . . . 41
  95.  
  96.     Appendix B.  World-wide use of Downsort  . . . . . . . . . . . . . 42
  97.  
  98.     Appendix C.  Sample Lists  . . . . . . . . . . . . . . . . . . . . 44
  99.  
  100.  
  101.                                                              Contents  ii
  102.  
  103.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  104.  
  105.  
  106.  
  107.     10.1 ALL-list  . . . . . . . . . . . . . . . . . . . . . . . . . . 44
  108.     10.2 GBL-list  . . . . . . . . . . . . . . . . . . . . . . . . . . 44
  109.     10.3 NEW-list  . . . . . . . . . . . . . . . . . . . . . . . . . . 44
  110.     10.4 EMI-list  . . . . . . . . . . . . . . . . . . . . . . . . . . 45
  111.     10.5 FILES.BBS   . . . . . . . . . . . . . . . . . . . . . . . . . 45
  112.     10.6 OKfile  . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
  113.     10.7 ORPhan list   . . . . . . . . . . . . . . . . . . . . . . . . 46
  114.  
  115.     Appendix D.  Sample Configuration File   . . . . . . . . . . . . . 47
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.                                                             Contents  iii
  165.  
  166.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  167.  
  168.  
  169.  
  170.   1.0 ABOUT DOWNSORT
  171.  
  172.   Downsort was originated in 1987 as a program for personal use.  I
  173.   founded the Bulletin Board PC-Square (2:512/4) and as SYSOP I wanted a
  174.   daily overview of my download material for the users in the form a
  175.   Bulletin.  The program name is related to the SORTing of the collection
  176.   of DOWNloadable files, in DOWNward time-stamp sequence and an online
  177.   Bulletin was the only list that was produced at that time.  PC-Square
  178.   was running BinkleyTerm and OPUS under DOS, and file-requesting was not
  179.   so popular then.
  180.  
  181.   Now PC-Square runs with OS/2, BinkleyTerm and MAXIMUS CBCS.  I'm not
  182.   SYSOP anymore but still strongly involved.  As a contribution to
  183.   PC-Square and the large community of international SYSOPs running
  184.   Bulletin Boards with MAXIMUS CBCS, and in the highly appreciated spirit
  185.   of BinkleyTerm, I decided to upgrade my Downsort program to the current
  186.   software.  During the past years a lot of improvements and extensions
  187.   have been made: many user-configurable options for many more output
  188.   formats then the original Downsort.
  189.  
  190.   The only dependency of Downsort on MAXIMUS CBCS is a parameter-file
  191.   AREA.DAT, which is usually created with a MAXIMUS utility (SILT(P)),
  192.   which itself can be used without actually running MAXIMUS!  This is the
  193.   way I work for testing of Downsort.
  194.  
  195.   "Appendix A.  History of changes" on page 36 gives an impression of
  196.   recent history.
  197.  
  198.   Downsort is now developed in an OS/2 environment, but it is distributed
  199.   as 'family'-application: it runs under OS/2 and DOS.  Recently a
  200.   32-bits version for OS/2 2.0 has been added for OS/2 2.0 and up.
  201.  
  202.   Downsort is in its 7-th year of development and has entered a period
  203.   where life becomes more and more complicated.  While adding new
  204.   features, I have tried to maintain compatibility.  This is a main cause
  205.   of complications.  Maybe in one of the newer versions I have to leave
  206.   this compatibility in favour of maintainability and user-friendliness.
  207.   In anticipation of this, please do not use undocumented features, or
  208.   styles of usage that are not described in this document.
  209.  
  210.  
  211.   1.1 QUICK START
  212.  
  213.   I appreciate that you are eager to use Downsort.  You don't have to
  214.   make a comprehensive study of this document.  But please read the
  215.   comments in Downsort.Cfg before making the changes you consider
  216.   appropriate.
  217.  
  218.   And before reporting supposed bugs or missing features, please first
  219.   read this document carefully!
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.                                                         About Downsort  1
  228.  
  229.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  230.  
  231.  
  232.  
  233.   1.2 REGISTRATION AND SHAREWARE FEE
  234.  
  235.   Downsort is a $ 0.00 Shareware (Freeware) Program.  This means (to me)
  236.   that you respect the commonly known rules for shareware, but you don't
  237.   have to pay me anything.
  238.  
  239.   Registration is voluntary: please send me a netmail message with your
  240.   name and (net-)address if you are a regular user of Downsort as SYSOP.
  241.   That gives me an impression of the usage and the impact of changes to
  242.   Downsort.
  243.  
  244.   If you tell me that you are running Downsort on your Bulletin Board as
  245.   service to your users, and you appreciate to be mentioned, I'll add
  246.   your name to the reference list in "Appendix B.  World-wide use of
  247.   Downsort" on page 42.
  248.  
  249.  
  250.   1.3 WARRANTY
  251.  
  252.   For this price?  You must be kidding!  But I'll listen to your
  253.   complaints and suggestions, and if time permits, I'll work on the
  254.   improvements you suggested.
  255.  
  256.  
  257.   1.4 ACKNOWLEDGEMENTS
  258.  
  259.   I would like to thank all users that contributed with constructive
  260.   remarks and encouraging appraisals.  Without doubt Emmanuel Sandorfi,
  261.   former SYSOP of 2:320/5, holds the record in number of suggestions and
  262.   amount of additionally required programming effort.  He also provided
  263.   some additional title-fonts (2 and 3).
  264.  
  265.   I also would like to thank the regular users (SYSOP's of Bulletin
  266.   Boards) who made Downsort much more popular than I ever dreamed of!  A
  267.   collection of geographically dispersed Boards can be found in "Appendix
  268.   B.  World-wide use of Downsort" on page 42.
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.                                                         About Downsort  2
  291.  
  292.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  293.  
  294.  
  295.  
  296.   2.0 OVERVIEW
  297.  
  298.   Downsort is a program to make lists of available download files for
  299.   Bulletin Board Systems, especially MAXIMUS CBCS.  The different types
  300.   of lists are each for a specific audience (online bulletin board user,
  301.   file-requestor, SYSOP) and purpose (all files, recent acquisitions).
  302.   Within each type there are many ways to customize the contents
  303.   (selection on user-privilege or user-interest), and format
  304.   (sort-sequence of files, titles, logo, etc).
  305.  
  306.   Downsort can produce the following report-types (1)for you:
  307.   (all these can be produced in one run).
  308.  
  309.   ■  user-lists
  310.      ∙  BBS-list, a colorful overview for online users of MAXIMUS CBCS
  311.      ∙  NEW-list of the most recent files (as a response to a
  312.         file-request of 'NEWFILES')
  313.      ∙  ALL-list for a complete overview in a file-group per area (as a
  314.         response to a file-request of 'FILES' of 'ALLFILES')
  315.      ∙  IPF-list similar contents as ALL-list, but in a different
  316.         presentation format (VIEW-able under OS/2)
  317.      ∙  GBL-list for a complete overview over the area-boundaries, as an
  318.         alternative for ALL-list if you don't want to bother
  319.         file-requestors with your area-structure
  320.  
  321.   ■  SYSOP lists:
  322.      ∙  ORPHAN-report as a help with management of the contents of your
  323.         areas and directories, and to correct possible upload problems or
  324.         inconsistencies
  325.      ∙  DUP-list for a list of duplicate filenames as a help to control
  326.         your disk-space and with version management.
  327.      ∙  OKFile for (Binkley) File-requests.
  328.      ∙  EMI-list for a list of new file arrivals to be included in an
  329.         announcement message.
  330.      ∙  Updated FILES.BBS files
  331.  
  332.   The lists can be generated for different privilege levels, and be
  333.   customized to a very high extend to present your system as you like it
  334.   to be seen by your users (headers, log, etc).  At the same time Maximus
  335.   (and OPUS) conventions are reflected in the way the file information is
  336.   presented.
  337.  
  338.   A sample of most of these lists can be found in "Appendix C.  Sample
  339.   Lists" on page 44.
  340.  
  341.   In short: Downsort is a very versatile tool to manage your database of
  342.   files, both in an OS/2 and DOS environment.
  343.  
  344.  
  345.   2.1 PURPOSE AND OBJECTIVES
  346.  
  347.  
  348.   ────────────────────
  349.   (1)     For the target audience the distiction between 'user' and
  350.           'sysop' is strictly the author's view!
  351.  
  352.  
  353.                                                               Overview  3
  354.  
  355.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  356.  
  357.  
  358.  
  359.   Downsort is designed for the following purposes:
  360.  
  361.   1. Produce different overviews of files which are available for
  362.      download by online users of the Bulletin Board and by
  363.      File-requestors.  QUICK and EASY file retrieval is the main goal for
  364.      the lists.  Therefore many lists-types and within a type several
  365.      variations should be available for SYSOP and users.
  366.  
  367.   2. Should not disclose files to users (file-requesters) without
  368.      positive agreement by SYSOP.
  369.  
  370.   3. Detect discrepancies between the contents of FILES.BBS and the
  371.      corresponding download directory, such as:
  372.      ■  The directory contains so called orphan-files, which have no
  373.         descriptive entry in FILES.BBS.
  374.      ■  FILES.BBS contains entries of which the file in not in the
  375.         directory (is 'offline').  This may be on purpose!
  376.  
  377.   4. Must be able to be run unattended (typically overnight).  The
  378.      file-access privilege system of a Bulletin Board System like Maximus
  379.      CBCS should be respected by the reports.
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.                                                               Overview  4
  417.  
  418.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  419.  
  420.  
  421.  
  422.   3.0 USER'S GUIDE
  423.  
  424.   This chapter explains the possibilities of Downsort.  Parameter
  425.   specifications will be covered in "4.0 Parameter Specifications" on
  426.   page 21.
  427.  
  428.  
  429.   3.1 INITIAL SETUP
  430.  
  431.   When you are going to use Downsort for the first time, you have to make
  432.   a number of decisions.  Below you'll find a kind of check-list, which
  433.   is setup to help you with a logical sequence of tasks to make the use
  434.   of Downsort succesful.  It does NOT give detailed specifications, these
  435.   can be found in "4.0 Parameter Specifications" on page 21.
  436.  
  437.   The specifications will be put into a configuration file Downsort.CFG,
  438.   which may contain information about:
  439.  
  440.   1. Data Collection
  441.  
  442.      File information will be collected from:
  443.      ■  Privilege, locks and download path-information from AREA.DAT
  444.      ■  File information from download directories
  445.      ■  FILES.BBS files for file descriptions
  446.  
  447.   2. List Type Selection
  448.  
  449.      Downsort can produce the following report types for you (all in one
  450.      run).
  451.      ■  BBS-list for online users of MAXIMUS CBCS
  452.      ■  NEW-list(s) for a list of the most recent files
  453.      ■  ALL-list(s) for a complete overview in a file-group per area
  454.      ■  GBL-list(s) for a complete overview over area-boundaries
  455.      ■  IPF-list(s) same as ALL-list, but in a different presentation
  456.         format (VIEW-able under OS/2, there is a special IP2-list for
  457.         OS/2 2.1+).
  458.      ■  DUP-list(s) for a list of possibly duplicate filenames
  459.      ■  ORPHAN-report for SYSOP use only
  460.      ■  OKFile(s) for (Binkley) File-requests
  461.      ■  EMIFile(s) for a list of file arrivals over the last period
  462.      ■  Updated FILES.BBS files
  463.  
  464.   3. File selection
  465.  
  466.      Reporting of file-information can be limited by:
  467.      ■  Privilege: only those files up to a certain privilege level will
  468.         be listed
  469. |    ■  Maximus' area key/locks
  470. |    ■  Area group with a set of areaINcludes and/or areaEXcludes for
  471. |       selection for special interest groups
  472.      ■  Explicit exclusion by specification of filespecs (wildcards)
  473.      ■  Number of files or period (days, weeks or months) to be reported
  474.  
  475.   4. List Customisation
  476.  
  477.  
  478.  
  479.                                                           User's Guide  5
  480.  
  481.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  482.  
  483.  
  484.  
  485.      The layout of the lists can be jazzed-up with:
  486.      ■  BLOCK-title and its font
  487.      ■  TopTitle, SubTitle, BottomTitle, Include (logo-) file
  488.      ■  Sorting sequence of areas (unsorted, name, include, group)
  489.      ■  Sorting sequence of files (unsorted, date, filename)
  490.      ■  Truncation, wrapping and indenting of file descriptions
  491.      ■  Area- or file-privilege and lock information
  492.      ■  Message and Warning texts
  493.      ■  Handling of Avatar codes in comment lines (strip or mimic).
  494.  
  495.      All in the language which suites your audience best.
  496.  
  497.   The sample Downsort.CFG file (see "Appendix D.  Sample Configuration
  498.   File" on page 47) contains defaults and a brief information to help you
  499.   with the parameter specifications.
  500.  
  501.   Below you can find some more explanation.
  502.  
  503.  
  504.   3.2 DATA COLLECTION
  505.  
  506.  
  507.  
  508.   3.2.1 AREA.DAT
  509.  
  510.   A MAXIMUS file 'AREA.DAT' is absolutely required by Downsort.  It is
  511.   however not necessary to run MAXIMUS yourself, the AREA.DAT file is
  512.   created with SILT(P) from the MAXIMUS package.  You can use this
  513.   utility without the other MAXIMUS stuff.  In fact I do that myself (NOT
  514.   running a MAXIMUS board)!  If you run Downsort in a directory without
  515.   AREA.DAT, then you should use specify the filespec for AREA.DAT.  It
  516.   allows also to specify a different AREA.DAT file than the one that is
  517.   used by your MAXIMUS.
  518.  
  519.   With SILT(P) you may build a special AREA.DAT for exclusive use by
  520. | Downsort, with different, less, or even more directories!  Probably
  521. | much more convenient is the use of AreaGroups with AreaINclude and/or
  522. | AreaEXclude in Downsort.CFG to limit the contents of the lists to a
  523. | group of areas, that you want to report together, while you use the
  524. | regular AREA.DAT.
  525.  
  526. | Remember: The combination of area privilege and Maximus' userkeys in
  527. | AREA.DAT in combination with the specification of report-privilege and
  528. | Maximus' userkeys in Downsort.CFG may restrict the contents of lists.
  529. | AreaGroups are subordinate to this and will work only for the
  530. | collection of areas within these privilege limits.
  531.  
  532.   In addition files may explicitly excluded during the data collection
  533.   process by specification of a number of filespecifications (wildcards
  534.   allowed).
  535.  
  536.   If Downsort reports a memory constraint (see also "6.6 Storage and
  537.   Performance" on page 28), you may use these techniques as
  538.   circumvention: exclude one or more of the file areas and rerun
  539.   Downsort.
  540.  
  541.  
  542.                                                           User's Guide  6
  543.  
  544.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  545.  
  546.  
  547.  
  548.   3.2.2 FILES.BBS
  549.  
  550.   Downsort uses the information in AREA.DAT to locate the description
  551.   files, usually called FILES.BBS.  So either the ListFile specification
  552.   in AREA.DAT, or the download directory to locate them (Maximus
  553.   default).
  554.  
  555.  
  556.   3.3 LIST TYPE SELECTION
  557.  
  558.   Downsort can produce several types of output reports, indicated by type
  559.   of list.  The following list types are available (all list types may be
  560.   generated in multiple variants within one run of Downsort, i.c. with a
  561.   single directory scan!).
  562.  
  563.  
  564.   3.3.1 ORPHAN-LIST
  565.  
  566.   This is a list of all files in download directories for which there is
  567.   no entry in any FILES.BBS file of all areas which have this directory
  568.   specified as download path.  The report contains date, area-name and
  569.   area-path of the orphan.  The entries are sorted on area and filename.
  570.  
  571.   Not reported are the files that match all FileEXclude specifications.
  572.   Normally you would exclude FILES.*, *.BAK, DIR.?BS and SYSTEM*.?BS.
  573.  
  574.   If you have more than 1 area pointing to the same download directory,
  575.   but with different FILES.BBS files, the orphans are reported for the
  576.   first of these areas only.
  577.  
  578.   Note: If there is an entry for a file in FILES.BBS without a
  579.   description, the file is NOT considered to be an Orphan!
  580.  
  581.  
  582.   3.3.2 BBS-LIST
  583.  
  584.   This is a list of downloadfiles that became recently available on your
  585.   system.  File selection is on date, but for presentation the list may
  586.   be sorted on date, newest first or on filename.
  587.  
  588.   The list contains compiled MECCA control sequences, for direct use in
  589.   MAXIMUS bulletins: a user-privilege sensitive list!  It might be a good
  590.   idea to put a translated [onexit] string, which translates into:
  591.   ^OFpath.  When a user exits from the BBS-list bulletin, it will fall
  592.   back to the exit-bulletin.
  593.  
  594.   The length of the file (number of file-entries) may be limited by
  595.   parameters:
  596.  
  597.   ■  file-count
  598.   ■  file age in days, weeks or months (30 days)
  599.   ■  maximum privilege
  600.  
  601.   (never more than available within the privilege limit).  If neither
  602.   specified it will contain all available files in all download
  603.  
  604.  
  605.                                                           User's Guide  7
  606.  
  607.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  608.  
  609.  
  610.  
  611.   directories.
  612.  
  613.   To make it easy for you to build a complete MAXIMUS bulletin-file a
  614.   user-provided header is included preceding the list and a trailer at
  615.   the end of the list.  Header and trailer can be built by SYSOP, and may
  616.   contain any information and bulletin-control sequences (a sample is
  617.   provided).
  618.  
  619.  
  620.   3.3.3 NEW-LIST
  621.  
  622.   Basically the same list as above, but in simple ASCII format.  This
  623.   list is suitable for regular file-requestors as brief overview of the
  624.   latest additions, updates or replacements.
  625.  
  626.  
  627.   3.3.4 EMI-LIST
  628.  
  629.   Basically the same as NEW-list, but more compact:
  630.  
  631.   ■  contains file also file-time and exact filesize in bytes.
  632.   ■  Description wrapping (if used) is overlapping the file-details
  633.      except filename (may be justified with indentation).
  634.  
  635.   The EMI-list is especially suitable to generate file-arrival messages
  636.   (the output should be included by another program).
  637.  
  638.  
  639.   3.3.5 ALL-LIST
  640.  
  641.   A list of all downloadfiles by area.  Files of the same area are listed
  642.   in groups, separated by imbedded headers with area-name, -description,
  643.   and -privilege.  Actual status information is provided in the
  644.   area-header as well: area-filecount and -bytecount, and latest
  645.   acquisition (date and file-name).
  646.  
  647.   At the end a SUMMARY report shows per area: area-title, file-count,
  648.   byte-count, and totals.
  649.  
  650.   The size of this list is limited only by the privilege parameter.  The
  651.   numbers in area-header and summary report show only what is available
  652.   for the particular privilege.
  653.  
  654.  
  655.   3.3.6 IPF- AND IP2-LIST
  656.  
  657.   Same contents as ALL-list but in a different format.  Only useful for
  658.   users that run OS/2 (OS/2 version 1.2+ under Presentation Manager).
  659.   This file has the format of an input-file for the Information
  660.   Presentation Facility Compiler (IPFC).
  661.  
  662.   There is a separate form of this list (called IP2-list) for OS/2 2.0.
  663.   It produces information that can be compiled only with the accompanying
  664.   IPF Compiler of the OS/2 2.0 Toolkit.  The result however can be VIEWed
  665.   under OS/2 1.3!
  666.  
  667.  
  668.                                                           User's Guide  8
  669.  
  670.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  671.  
  672.  
  673.  
  674.   3.3.7 GBL-LIST
  675.  
  676.   Similar to ALL-list, but where ALL-list gives the files in groups per
  677.   area, the GBL-list ignores area-boundaries and gives a single group.
  678.   It contains an extra column with the area-code for each file, there is
  679.   no area-summary.
  680.  
  681.   SYSOP may choose which of both is suitable to make available to users,
  682.   and which to use for himself (or even both).
  683.  
  684.   The GBL-list can be used in stead of the ALL-list if your users prefer
  685.   searching in the list without having to bother about area-organisation.
  686.   Although one of the original purposes of the GBL-list was checking for
  687.   duplicate files, there is now also a special report for this particular
  688.   purpose (see "3.3.8 DUP-list").
  689.  
  690.  
  691.   3.3.8 DUP-LIST
  692.  
  693.   Simple report of possibly duplicate files over the areas.  The format
  694.   is basically the same as the GBL-list, but only files with the same
  695.   filename are reported.  'Offline' files are included in the check,
  696. | orphans are not!
  697.  
  698. | With the 'DupNameSize' keyword in Downsort.Cfg you may indicate how
  699. | many characters have to be considered in the compare of the filename.
  700. | The default is the whole filename (8 characters), extension and path
  701. | are always excluded from the compare.  If you specify a smaller number,
  702. | then you may catch version-numbers, which are generally put at the end
  703. | of the name.  For example: if you specify MaxDupName 6, then
  704. | DWNSRT59.ZIP and DWNSRT60.ZIP are reported as duplicate, while this
  705. | would not be the case if the default of 8 was used for the filename
  706. | compare.
  707.  
  708.   Please note that the DUP-list may not always contain what you expect.
  709.   It can be more or less, for example:
  710.  
  711.   ■  Downsort looks primarily at filenames only (extension is of second
  712.      importance, path is completely ignored).
  713.   ■  You may have explicitly excluded areas from the search.
  714.   ■  You may have excluded areas by privilege: Downsort completely
  715.      ignores areas with a higher privilege than any report asked for.
  716.   ■  You have duplicates in 'orphan'-state.
  717.  
  718.   These circumstances may give 'false' signals or hide duplicates!
  719.  
  720.   All duplicate files within the privilige-range will be reported, even
  721.   when a counterpart has a higher privilege or are orphan (and thus will
  722.   not be reported in the DUP-list)!  You may need a file-finder-utility
  723.   to search for the 'partner'-file in one of the directories with a
  724. | higher privilege.
  725.  
  726. | There are only a few other parameters applicable to this list.  The
  727. | output is sorted on filename, unless you specify a different sorting
  728. | regime (date or area, and within area on filename of FILES.BBS
  729.  
  730.  
  731.                                                           User's Guide  9
  732.  
  733.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  734.  
  735.  
  736.  
  737. | sequence).  All user-titles are left out.
  738.  
  739.   Suppression of reporting files with equal filenames and different
  740.   extensions is possible with the "NonDupEXT" keyword in Downsort.Cfg.
  741.   You specify pairs of extensions.  Two files with equal filename and one
  742.   of each having an extension specified as 'pair' will not be reported as
  743.   duplicate.  For example, if you specify:
  744.  
  745.      NonDupEXT  SDN  SDA
  746.  
  747.   then file pairs xyz.SDN and xyz.SDA will not be reported in the
  748.   DUP-list.
  749.  
  750.   This pair-exclusion can also be used for more than 2 extensions, but
  751.   the exclusion works only for pairs of files.  So then you must specify
  752.   as many pairs as can be formed.  For example if you want to exclude
  753.   file combinations like xyz.IDX xyz.DAT and xyz.EXT, then you should
  754.   specify:
  755.  
  756.      NonDupEXT  IDX DAT  IDX EXT  DAT EXT
  757.  
  758.   Warning: The check on duplicates by Downsort works only when you
  759.   specify all  possible pairs of extensions!  If you fail to specify any
  760.   possible pair, the Dup-list may contain false signals.
  761.  
  762.   Multiple pairs may be specified on a line, and multiple lines are
  763.   allowed.
  764.  
  765.  
  766.   3.3.9 OKFILE
  767.  
  768.   List-file specifications for file-requests in BinkleyTerm style.  The
  769.   generated paths in the list obey the following rules:
  770.  
  771.   ■  the area-privilege is within the privilege limit of the report
  772.  
  773.   ■  the area is not excluded (by areaEXclude)
  774.  
  775.   ■  the area has at least 1 file within the privilege limit of the
  776.      report
  777.  
  778.   The paths are sorted on area-name (although the area-name is not part
  779.   of the list).  There is no check on duplicate paths.
  780.  
  781.   The list is not jazzed-up with titles, etc, but a file may be included
  782.   in front of the list if specified on the OKFileList in Downsort.CFG
  783.   (see "Appendix D.  Sample Configuration File" on page 47).  This option
  784.   allows you to insert a list of 'magic' names in the OKFile.
  785.  
  786.   Two formats of the OKfile are available:
  787.  
  788.   ■  A SHORT format with lines in the format "filepath\*.*".  This is the
  789.      regular format for BinkleyTerm and other mailers.
  790.   ■  A LONG format with lines in the format: "@filespec
  791.      filepath\filespec".  All files have a 'magic'-name assigned and
  792.  
  793.  
  794.                                                          User's Guide  10
  795.  
  796.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  797.  
  798.  
  799.  
  800.      there are no generic file specifications in the OKFileList.  This
  801.      prevents directory searches for BinkleyTerm for each file-request.
  802.  
  803.   Note: Some newer versions of BinkleyTerm can use the file base of
  804. | Maximus to find a file even faster.
  805.  
  806.  
  807. | 3.3.10 USRFILE
  808.  
  809. | A yet experimental but already very versatile 'user format' list.  This
  810. | list-type allows you freedom in layout of the outputline, but is
  811. | designed to build a batch-file for file maintenance purposes, with a
  812. | single output line per file.  The line-format is specified completely
  813. | by you!  It may contain any text and some symbolic variables that
  814. | represent the values of some file information items:
  815.  
  816. | %A    Areaname
  817. | %C    File Creation date
  818. | %F    Filename.ext
  819. | %H    File age in days (most recent of lastWrite and Creation Date is
  820. |       taken).
  821. | %P    Path specification of download directory
  822. | %S    File Size
  823. | %W    File lastWrite date
  824.  
  825. | file maintenance purposes.
  826.  
  827. | Just an example: if you want to get rid of all files older than 2
  828. | years, you let Downsort produce REXX-procedure with for each file a
  829. | line as follows:
  830.  
  831. |    if %H > 730 then erase %P%F
  832.  
  833. | Of course you may limit the list with file-privilege, area-group, etc.,
  834. | like all regular xxxFileLists of Downsort.  And if you think Downsort
  835. | might generate too many or too few of these statements, you can always
  836. | have a manual check and modify the list before actually executing the
  837. | procedure!  It may help if you expand the USRmodel statement with a
  838. | REXX comment, like:
  839.  
  840. |   if %H>730 erase %P%F   /* LastWriteDate=%W  CreationDate=%C */
  841.  
  842.  
  843.  
  844.   3.3.11 REBUILD FILES.BBS
  845.  
  846.   New "FILES.BBS" type of file may be (re-)created, one for every area.
  847.   The contents of the file-information will be about the same as the
  848.   original FILES.BBS, but with the following notes:
  849.  
  850.   ■  A header is generated with area-name, -title, and -privilege.  Also
  851.      the total amount of files and bytes and the most recently acquired
  852.      file in this area is part of the header information.  The header
  853.      will look a bit different if any area has a long name (more than 3
  854.      characters) than when all areas have short names.
  855.  
  856.  
  857.                                                          User's Guide  11
  858.  
  859.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  860.  
  861.  
  862.  
  863.   ■  Files with a privilege up to and including the area-privilege are
  864.      listed first.
  865.   ■  Files can have a privilege other than the area-privilege when the
  866.      original FILES.BBS file contains ^Pp-sequences ('p' being a
  867.      privilege letter).  This construction will be rebuilt by Downsort.
  868.      Files with a higher privilege than the area-privilege will follow
  869.      after a compiled MECCA-sequence (^Pp) in the new FILES.BBS.
  870.      Downsort respects these indicators when reading FILES.BBS, so all
  871.      file-privilege information is retained.  This ensures no accidental
  872.      loss of file-information, and the regular user won't see more than
  873.      he should.
  874.   ■  Wild-card specifications in the original FILES.BBS are not
  875.      propagated to the new FILES.BBS.
  876.   ■  The file description is kept internally as a single string of about
  877.      2 KBytes (Maximus 2.0 supports up to 240 bytes!)  When creating
  878.      FILES.BBS files, this will be the file format (single record per
  879.      file-entry).  The original FILES.BBS may contain a single line
  880.      description, or multi-line descriptions.  When encountering
  881.      multi-line descriptions in input-FILES.BBS, Downsort concatenates
  882.      the separate description lines with a single intermediate space up
  883.      to a maximum of 2 KBytes.  This will be the output format.
  884.   ■  Comments in FILES.BBS will be preserved only when the Keep-Sequence
  885.      option is used (specify /K on the FilFilePath line of Downsort.Cfg).
  886.  
  887.   Special attention is requested for the following:
  888.  
  889.   ■  Downsort from version 5.7 recognises its own headerlines with the
  890.      characters: <-><&delta.><&delta.><backspace><backspace> for each of
  891.      its header-lines, and will skip all lines starting with this
  892.      sequence during the data collection phase.
  893.   ■  You can include your own file with the /I-option on the FILFilePath
  894.      line in Downsort.Cfg in the header of FILES.BBS.  All lines in the
  895.      include-file for FILES.BBS output will be prefixed by Downsort with
  896.      the 5-character sequence mentioned above to make sure that these
  897.      will also be 'refreshed' each time you run Downsort.
  898.   ■  The destination of FILES.BBS-files is not by definition the same as
  899.      the origin!  An output path can be specified in the configuration
  900. |    file.  If you don't specify an output-path on the FILFilePath line
  901. |    in Downsort.Cfg, the output will replace the original FILES.BBS (the
  902. |    old will be renamed to FILES.BAK).  If you specify an output path
  903. |    the output will be put in the specified directory and the filenames
  904. |    will have the format "areaname.BBS".
  905.  
  906. |    Entries of 'offline' files can be removed with Downsort.
  907.  
  908.   Manual checking or post-processing by some other program may follow
  909.   Downsort, after which the files might be put back on the MAXIMUS
  910.   specified position.
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.                                                          User's Guide  12
  921.  
  922.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  923.  
  924.  
  925.  
  926.   3.4 DATA SELECTION
  927.  
  928.   During the data collection phase of Downsort, files are selected on
  929.   several criteria.  Generally speaking not more information is collected
  930.   than needed for all lists in a single run of Downsort.
  931.  
  932.   During the list creation phase a further file selection may take place.
  933.  
  934.   Apart from the short OK-list, all lists are primarily created from the
  935.   file information.  This means for example that if a selection is such
  936.   that no files of a certain area fall within the list criteria, the
  937.   files of that area will not appear in any list.
  938.  
  939.  
  940.   3.4.1 PRIVILEGE CONTROL
  941.  
  942.   The default file privilege to be shown in the lists is SYSOP.  All
  943.   files with a higher privilege than the specified (or defaulted)
  944.   report-privilege will not appear in the lists.
  945.  
  946.   Files without a matching filename-entry in FILES.BBS are treated as
  947.   Hidden.  That means that by default these files will not be listed,
  948.   unless the Hidden privilege is used on the report-specification.
  949.  
  950.   If you run a mailer like BinkleyTerm and support file-requests, you
  951.   lack the extensive privilege system like Maximus.  The only distiction
  952.   BinkleyTerm makes with file-request is 'unknown', 'known' and
  953.   'password-protected'.  You may generate multiple download lists with
  954.   different privilege indicator, depending if you support different
  955.   file-collections for different levels of file-requests.  An
  956.   sample-setup is given in "5.0 Sample of Getting organised" on page 24.
  957.  
  958.   Multiple lists are not needed for Downsort.BBS, since this file has
  959.   imbedded privilege control sequences for MAXIMUS users.  But you should
  960.   specify a sufficiently high privilege for the BBS-list to satisfy your
  961.   most valuable users!
  962.  
  963.  
  964.   3.4.2 AREA SELECTION
  965.  
  966.   There are several ways to perform area selection:
  967.  
  968. | 1. With AreaGroup definitions with individual sets of AreaINclude
  969. |    and/or AreaEXclude statements you may select groups of areas by name
  970.      from the used AREA.DAT file.
  971.  
  972.   2. Individual list specifications may further reduce the lists on file
  973.      privilege and userkeys.  The latter makes use of the Maximus feature
  974.      called 'key/locks'.
  975.  
  976.   3. AREA.DAT file needs not be the regular complete AREA.DAT used by
  977.      your online Maximus system.
  978.  
  979. | You should realise that the selection has the following sequence:
  980.  
  981.  
  982.  
  983.                                                          User's Guide  13
  984.  
  985.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  986.  
  987.  
  988.  
  989. | ■  AREA.DAT
  990. | ■  Area privilege and lock
  991. | ■  Areagroup with areaIN/EXclude
  992.  
  993. | Make sure you don't restrict the collection phase too much.  The list
  994. | specifications may further reduce the contents of each list.
  995.  
  996.  
  997.   3.4.3 FILENAME SELECTION
  998.  
  999.   Downsort scans download directories and collects data of all files
  1000.   (except those with the hidden or system attribute).  With the keyword
  1001.   FileEXclude in Downsort.cfg, you may indicate which files you want to
  1002.   exclude from processing by Downsort, based on filename.  With one or
  1003.   more filespecs, wildcards allowed, all files with matching filespec
  1004.   will be excluded during the data collection phase, regardless of the
  1005.   area.  The current implementation supports only the traditional 8.3
  1006.   filename.ext format, no long names and no explicit path.
  1007.  
  1008.   In versions of Downsort before 5.9 the hardcoded specification of
  1009.   certain 'system' files has been removed, and these filespecs should now
  1010.   be specified in Downsort.cfg.  The sample Downsort.cfg does contain
  1011.   these specifications.  I suggest to leave that line asis and add one or
  1012.   more new lines for your own use.  Warning: FileEXcluded files will even
  1013.   not appear in the FILES.BBS  (re-)created by Downsort!
  1014.  
  1015.  
  1016.  
  1017.   3.4.4 REPORT LENGTH
  1018.  
  1019.   For lists that are meant to show the latest file-information only
  1020.   (BBS-, NEW- and ALL-list), the length of the list can be limited to a
  1021.   maximum number of file-entries or to file-age in days, weeks or months.
  1022.  
  1023.  
  1024.   3.5 LIST CUSTOMISATION
  1025.  
  1026.  
  1027.  
  1028.   3.5.1 HEADERS, TITLES AND INCLUDE FILES
  1029.  
  1030.   There are several ways to customize the appearance of the lists for
  1031.   Downsort.  All items in the following list are optional, but the
  1032.   sequence in the reports is fixed and as listed:
  1033.  
  1034.   Pre-Title   Lines that should appear as the very first lines of your
  1035.               lists.  Any text may be specified.  Leading '~'-characters
  1036.               (tilde) will be treated as full-size required blanks,
  1037.               mainly to manually align (center) the text in these lines.
  1038.               There is no automatic centering.  You may have to
  1039.               experiment a little.
  1040.  
  1041.   TITLE       A short title (8-12 characters), that will be magnified to
  1042.               big BLOCK-letters.  There are 4 block-fonts to choose from.
  1043.               Not all characters are supported and lower-case will be
  1044.  
  1045.  
  1046.                                                          User's Guide  14
  1047.  
  1048.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1049.  
  1050.  
  1051.  
  1052.               translated to upper-case.  The '~'-character (tilde) will
  1053.               be treated as full-size required blank, the '`'-character
  1054.               (accent-grave) as half-size required blank.
  1055.  
  1056.               If not specified, a default title is generated as
  1057.               Downsortxy, where xy stands for the current version of
  1058.               Downsort.
  1059.  
  1060.   TitleFont   Number of the font to be used for the BLOCK title.  If
  1061.               specified as 0, the BLOCK-title will NOT be generated at
  1062.               all.
  1063.  
  1064.   Include-file A text-file to be included.  There will be no manipulation
  1065.               of the contents of this file.  This include-file may be all
  1066.               you need to obtain a fully customized list.  For the
  1067.               IPF-list this include file will most likely have to contain
  1068.               IPF tags for proper formatting, for the OK-file it will be
  1069.               a list of 'magic' name entries.
  1070.  
  1071.   Sub-Title   Lines that should appear immediately following the
  1072.               block-title.
  1073.  
  1074.   BottomTitle Lines that should appear as very last lines of the lists.
  1075.               These follow my 'signature'.
  1076.  
  1077.   The BLOCK-title and Pre-, Sub-, and Bottom-titles are used for all
  1078.   reports identically, there is no such thing as an 'individual' title
  1079.   specification for each report.  However the Include-file may be
  1080.   different for each report.  If you want to build more than 1 list but
  1081.   with different 'headings' or no headings at all, you better forget the
  1082.   Title-options.  In stead make heading-files and use the Include option
  1083.   of the individual list specifications.
  1084.  
  1085.   Note: Exceptions:
  1086.  
  1087.   1. None of the above does apply to the BBS-list.  As it will generally
  1088.      be desirable to imbed (compiled) MECCA control sequences in this
  1089.      type of lists, this report will include dedicated top and bottom
  1090.      files (if available in the current default directory).  These files
  1091.      must be called Downsort.HDR (header) and Downsort.TRL (trailer).
  1092.  
  1093.   2. The ORPHAN report will not contain any user-titles.
  1094.  
  1095.   3. The FILES.bbs files will not use any of the title-specifications,
  1096.      but may use an Include-file.
  1097.  
  1098.   Recommendation: File-requestors appreciate a header with a clear
  1099.   indication of the source of the reports.  Many Bulletin Boards use
  1100.   FILES or ALLFILES as 'magic' name, but that is not very distinctive if
  1101.   you collect lists of different boards!  So use Downsort's facilities to
  1102.   generate a block-title with your system-name, or an include file with
  1103.   some kind of logo.
  1104.  
  1105.   Note: Specification details and samples can be found in Downsort.CFG.
  1106.  
  1107.  
  1108.  
  1109.                                                          User's Guide  15
  1110.  
  1111.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1112.  
  1113.  
  1114.  
  1115.   Some SYSOPs do not like to confront their users with privileges.  In
  1116.   most headers there will be a line with the reporting privilege.  This
  1117.   may be suppressed.
  1118.  
  1119.  
  1120.   3.5.2 FILE SORTING
  1121.  
  1122.   The file-entries in the lists can be sorted on different keys:
  1123.  
  1124.   ■  Filedate
  1125.  
  1126.   ■  Filename
  1127.  
  1128.   ■  Sequence of FILES.BBS
  1129.  
  1130.   The default sorting sequence depends on the type of list.  Some lists
  1131.   do not support some of these sorting keys.
  1132.  
  1133.   Note: File sorting has a local scope.  It can be specified for to each
  1134.   listtype individually.
  1135.  
  1136.  
  1137.   3.5.3 AREA SORTING
  1138.  
  1139.   The order in which the areas are presented in the lists can be
  1140.   specified:
  1141.  
  1142.   ■  Order of AREA.DAT
  1143.   ■  Sorted alphabetically on areaname
  1144.   ■  Order of areaINclude statements in the Areagroup
  1145.   ■  Groupname-order
  1146.  
  1147.   The Groupname-order is a special order based on a popular naming
  1148.   convention for areas.  Many SYSOPs use areanames with a group-name or
  1149.   -letter followed by a sequence number.  With groupname sorting the
  1150.   areaname is split - if possible - into a groupname (if the first
  1151.   character is not be numeric) and a sequence number (if the last part of
  1152.   areaname is numeric).  Primary sort key is groupname, secundary sortkey
  1153.   is sequence number.  If the first character of the area-name is
  1154.   numeric, the groupname is empty, and if the last part of the areaname
  1155.   is not numeric, the second key is empty.
  1156.  
  1157.   If the ordering does not match your more complicated area naming
  1158.   convention, you can always fallback on a properly sequenced AREA.DAT,
  1159.   or on areaINclude sequence.
  1160.  
  1161.   If Include-order is specified, but AreaINclude is not, then the order
  1162.   falls back to Group-order.
  1163.  
  1164.   The area-order specification has a global scope.  It applies to every
  1165.   lists where the areaname is significant, including summaries in ALL-
  1166.   and IPF-lists.
  1167.  
  1168.   Default sorting order is 'Group'.
  1169.  
  1170.  
  1171.  
  1172.                                                          User's Guide  16
  1173.  
  1174.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1175.  
  1176.  
  1177.  
  1178.   3.5.4 WARNINGS, INDICATIONS, DESCRIPTIONS AND COMMENTS
  1179.  
  1180.   ■  There are two options for long file descriptions (those that do not
  1181.      fit on a 80-character line):
  1182.      ∙  Truncation at end-of-line
  1183.      ∙  Wrapping to multiple lines
  1184.  
  1185.      Both options are available for all lists, but the defaults vary with
  1186.      the type of the report.  If wrapping is specified continuation lines
  1187.      will start in the same column as the description on the first line
  1188.      unless a non-zero indentation is specified.
  1189.  
  1190.   ■  Orphan description: Text that will be reported in the description
  1191.      column of a file, when for this file no entry in FILES.BBS could be
  1192.      located.
  1193.  
  1194.      Default: "---------- Orphan ---------".
  1195.  
  1196.   ■  Not-Found description: Text for the description column when the
  1197.      file-entry was found in FILES.BBS, but there was no description
  1198.      present.
  1199.  
  1200.      Default: "--- no description available ---".
  1201.  
  1202.   ■  Offline description: Text that will replace file-size and file-date,
  1203.      when an entry for this file was found in FILES.BBS, but the file
  1204.      could not be located in the download directory.
  1205.  
  1206.      Default: " - offline - ".
  1207.  
  1208.   ■  Comments in FILES.BBS (mostly used for additional description for
  1209.      groups of files) will be listed when no sorting is specified (the /K
  1210.      option for ALL-, IPF- and FIL-lists).
  1211.  
  1212.      When Downsort encounters Avatar screen handling codes in FILES.BBS
  1213.      these are stripped of or partially imitated in the output lists
  1214.      (unless AVAstrip No is specified in Downsort.Cfg).  Typical screen
  1215.      handling commands (cursor movement, color settings) are just
  1216.      stripped, others (repeating characters of patterns) are imitated.
  1217.  
  1218.   ■  Size of a VIEW-page in IPF-list: The IPF-list of areas with more
  1219.      than 250 file entries will be splitted into 'parts' to prevent the
  1220.      IPF-compiler message 'page size exceeded'.  But if you have many
  1221.      long descriptions, or wish smaller parts, the page-size can be
  1222.      altered with a parameter on the IpfFileList line in Downsort.CFG.
  1223.  
  1224.      Default: 250.
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.                                                          User's Guide  17
  1236.  
  1237.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1238.  
  1239.  
  1240.  
  1241.   3.6 MISCELLANEOUS REPORT INFORMATION
  1242.  
  1243.  
  1244.  
  1245.   3.6.1 FILE INFORMATION IN LISTS
  1246.  
  1247.   1. Dates are marked with a 'new'-indicator: a '*' if the file is only
  1248.      since a week on this system, and a '+' if it is since a month.
  1249.      Filedates later than the current system date are marked '-'
  1250.      (negative age).
  1251.  
  1252.   2. In every outputfile the filename, MAXIMUS-area name, file-size and
  1253.      -date, and file-description from FILES.BBS is listed.  A report-line
  1254.      will never display more than 79 characters.
  1255.  
  1256.      The file-description will be multi-line in ALL-, IPF- and GBL-list
  1257.      if it is longer than would fit on the standard 79-position line, a
  1258.      word-wrapping technique is used for readability (line-split on word
  1259.      boundary).  The description is truncated at end of line in BBS-list
  1260.      and NEW-list.
  1261.  
  1262.      The -T option will force truncation of the description in all
  1263.      reports, the -W option will allow multi-line descriptions in all
  1264.      reports.  When wrapping is used, continuation lines will normally be
  1265.      aligned on the start position of the desription.  This may be
  1266.      modified with an indentation option.
  1267.  
  1268.      If a filename is found in FILES.BBS, but no accompanying
  1269.      description, a "--- no description available ---" will be put in
  1270.      place.  An alternative text may be specified with Downsort.CFG.
  1271.  
  1272.      Files for which there is no entry in the FILES.BBS (Orphans) are
  1273.      treated as Hidden files, which are only listed in the reports if the
  1274.      Hidden privilege is specified.
  1275.  
  1276.      Note: If you want the orphans to appear in FILES.BBS (or in any
  1277.      other report), you MUST also generate an ORP-list in the same
  1278.      Downsort run!
  1279.  
  1280.   3. '- offline -" in stead of file-size and file-date is reported if
  1281.      FILES.BBS contains an file-entry while the file is not in the
  1282.      corresponding directory.
  1283.  
  1284.   4. The BBS-list contains MAXIMUS authorisation controls
  1285.      (^PLp-sequences), corresponding to the privilege of the area or the
  1286.      individual file.  So it is not necessary to make different files for
  1287.      different categories of MAXIMUS users, even with the default
  1288.      privilege-limit SYSOP a user will not see the files he/she is not
  1289.      supposed to know about.
  1290.  
  1291.      Other lists do not contain any privilege information, the files (or
  1292.      complete areas) above the specified privilege are simply not listed,
  1293.      however multiple lists can be produced for different categories of
  1294.      users (based on privilege).
  1295.  
  1296.  
  1297.  
  1298.                                                          User's Guide  18
  1299.  
  1300.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1301.  
  1302.  
  1303.  
  1304.   3.6.2 FILE DATES
  1305.  
  1306.   One of the function of Downsort is sorting on file date.  Since the
  1307.   introduction of HPFS in OS/2 version 1.2, there is not one single
  1308.   file-date anymore!  A file on an HPFS volume has different values for:
  1309.  
  1310.   ■  Creation date
  1311.   ■  LastAccess date
  1312.   ■  LastWrite date
  1313.  
  1314.   The date you see normally in DIR-listings is the LastWrite date.  Most
  1315.   SYSOPs will have noticed that ZMODEM uploads and file-attaches give
  1316.   file-dates corresponding to the (LastWrite-) date of the sending
  1317.   system.  And most utilities handle only this 'single' date.  That means
  1318.   that old ZMODEM-uploaded files are generally not on top of the
  1319.   acquisition lists.
  1320.  
  1321.   But HPFS stores the date of arrival on your system (Creation) as well.
  1322.   Downsort handles most recent of Creation and LastWrite date for
  1323.   sorting, but the lists (see below) contain the 'old fashioned'
  1324.   LastWrite date.  This has the following consequences:
  1325.  
  1326.   ■  A new acquisition is on top of lists, if that list is sorted on
  1327.      date, and are marked in the lists as new by a flag for an 'age' of a
  1328.      week or a month.
  1329.   ■  The listed file-date is the 'ordinary' date.  So users can judge for
  1330.      themselves if the file is 'new' for them as well.
  1331.  
  1332.   Note: The LastAccess date is not very relevant for the purposes of
  1333.   Downsort, although SYSOP may see when it was last downloaded.
  1334.  
  1335.   Downsort is delivered with a simple DIR-like utility 'HPFSDATE' to show
  1336.   the three dates of a file on a HPFS volume.
  1337.  
  1338.   Files with 'future' file dates will be indicated with a '-' flag in the
  1339.   lists.  These files will never appear in: BBS-, NEW-, and EMI-lists.
  1340.  
  1341.  
  1342.   3.6.3 DUPLICATE FILENAMES
  1343.  
  1344.   Duplicate filenames will be checked only if the DUP-list is generated.
  1345.   And duplicates will be reported only in the DUP-list.  So duplicate
  1346.   file may appear in regular user-lists, which means:
  1347.  
  1348.   ■  If a filename.ext is encountered more than once in different
  1349.      subdirectories of download files, it will appear that many times in
  1350.      the outputlist.  The file-privilege reflects that of the area where
  1351.      the file belongs to, unless overridden by a ^Px modifier in
  1352.      FILES.BBS.
  1353.   ■  It may happen that a file is reported as orphan in one area, and as
  1354.      duplicate in another.  It is likely that the file is found in a
  1355.      common download directory of more than one area but it is described
  1356.      in the FILES.BBS of a 'secundary' area, but with the wrong
  1357.      extension.
  1358.  
  1359.  
  1360.  
  1361.                                                          User's Guide  19
  1362.  
  1363.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1364.  
  1365.  
  1366.  
  1367. | Downsort.Cfg give you some control over detection of duplicates:
  1368.  
  1369. | ■  With the 'NonDupExt' keyword you may suppress certain duplicates.
  1370. | ■  With 'DupNameSize' you may specify how many characters of the
  1371. |    filename have to be taken into consideration.
  1372.  
  1373. | See "3.3.8 DUP-list" on page 9 for more details.
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.                                                          User's Guide  20
  1425.  
  1426.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1427.  
  1428.  
  1429.  
  1430.   4.0 PARAMETER SPECIFICATIONS
  1431.  
  1432.   This chapter tells you how to customize the configuration file and what
  1433.   you might specify on the commandline.
  1434.  
  1435.   A sample configuration file (in "Appendix D.  Sample Configuration
  1436.   File" on page 47) is part of the package.  It contains a brief comments
  1437.   (in Binkley and MAXIMUS style) to help you.
  1438.  
  1439.  
  1440.   4.1 COMMANDLINE PARAMETERS
  1441.  
  1442.   This paragraph deals only with the commandline parameters!
  1443.  
  1444.  
  1445.     [drive:][path]  DOWNSORT  [@filespec] [/H | /Q | /V]
  1446.  
  1447.  
  1448.   @filespec   The character '@' followed by a complete file
  1449.               specification of the Downsort configuration file(see "4.2
  1450.               Configuration file Parameters" for details).  This file
  1451.               will be used to specify processing parameters.
  1452.  
  1453.               NOTE: The specification of a configuration file is
  1454.               mandatory when the file AREA.DAT is not in the default
  1455.               directory when running Downsort.
  1456.  
  1457.               Default: Downsort.CFG in current default directory.
  1458.  
  1459.   /H /Q /V    Operating mode
  1460.               ■  H - Help:  display screen with essential information
  1461.                  about running Downsort, such as the command syntax.  In
  1462.                  that case the program will not take any other action.
  1463.               ■  Q - Quiet: display only start and finish-message, and
  1464.                  error messages which prevent the program from proceeding
  1465.                  normally.
  1466.               ■  V - Verbose:  display a lot of progress messages.
  1467.               If neither -Q nor -V is specified, than the number of
  1468.               console messages will be 'intermediate': more than -Q, but
  1469.               less than -V.
  1470.  
  1471.               Default: none
  1472.  
  1473.  
  1474.  
  1475.   4.2 CONFIGURATION FILE PARAMETERS
  1476.  
  1477.   All processing options are specified in the configuration file.  The
  1478.   parameters are only mentioned here for completeness, see "Appendix D.
  1479.   Sample Configuration File" on page 47 for a documented specification
  1480.   sample of a configuration file.
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.                                              Parameter Specifications  21
  1488.  
  1489.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1490.  
  1491.  
  1492.  
  1493.   4.2.1 PARAMETERS WITH GLOBAL SCOPE
  1494.  
  1495.   The parameters below influence the execution of Downsort, or have
  1496.   impact on every list (if it is applicable for that list).
  1497.  
  1498.   ■  Specification of the MAXIMUS CBCS file 'AREA.DAT'.
  1499.   ■  Area selection by name
  1500.   ■  Area and File selection by privilege and/or Maximus' key/lock
  1501.   ■  Explicit file exclusion
  1502.   ■  Sorting order of areas
  1503.   ■  List title with BLOCK-characters.
  1504.   ■  Pre-titles, Sub-titles and Bottom-lines in 'text' format
  1505.   ■  Descriptive text of orphans, files without a description and files
  1506.      for which an entry is found in FILES.BBS, but could not be found in
  1507.      the corresponding download directory.
  1508.  
  1509.  
  1510.  
  1511.   4.2.2 PARAMETERS WITH LOCAL SCOPE
  1512.  
  1513.   The parameters below are sub-parameters of the xxxFileList keyword.
  1514.  
  1515.   ■  List privilege
  1516.   ■  Userkeys for a list
  1517.   ■  Alternate output filename (in stead of the default Downsort).
  1518.   ■  Directory for the output FILES.BBS-lists
  1519.   ■  Maximum number of file entries in NEW- and BBS-list
  1520.   ■  File-entry sort sequence (filename or date).
  1521.   ■  Automatic removal of file entries from FILES.BBS of 'not-found'
  1522.      files.
  1523.   ■  Wrap or Truncate long file descriptions, and Indentation of
  1524.      continuation lines.
  1525.   ■  Title Font selection.
  1526.   ■  Suppression of privilege indications.
  1527.   ■  Include textfile in NEW-, ALL-, IPF- and GBL-lists, and in
  1528.      FILES.bbs.
  1529.  
  1530.   Downsort can generate any number of lists in a single run.  If you are
  1531.   clever with Maximus key/lock manipulations, you will master Downsort
  1532.   quickly to make the proper selections.
  1533.  
  1534.   A sample configuration file is provided.  A listing of this file is
  1535.   imbedded as "Appendix D.  Sample Configuration File" on page 47.  It
  1536.   contains a complete specification with comments on:
  1537.  
  1538.   ■  which options are available
  1539.   ■  how to specify the options
  1540.  
  1541.   Read and modify the file as you like.  Copy the sample file to a safe
  1542.   place before you start modifying the original Downsort.CFG!
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.                                              Parameter Specifications  22
  1551.  
  1552.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1553.  
  1554.  
  1555.  
  1556.   4.3 COMPILING THE IPF LISTS
  1557.  
  1558.   IPF-lists have to be processed by the Information Presentation Facility
  1559.   Compiler (IPFC).  This compiler is part of the IBM Programmers
  1560.   Development Toolkit version 1.2/1.3.  For the IP2-list the IBM OS/2
  1561.   2.0+ Toolkit is needed.  The following command has to be issued:
  1562.  
  1563.       IPFC  Downsort.IPF  /INF
  1564.  
  1565.   The option "/INF" is needed to obtain a VIEWable file, if not specified
  1566.   a .HLP file will be generated.  Be sure to have the file Downsort.BMP
  1567.   in your current default directory, or in DPATH, as this will be
  1568.   imbedded by the IPF-compiler.  The result of the compilation is a file
  1569.   Downsort.INF, which can be VIEWed with the following command:
  1570.  
  1571.       VIEW  Downsort
  1572.  
  1573.   The names "Downsort", "IPF" and "INF" are used here as sample, actually
  1574.   the filename depends on the specification in the Downsort configuration
  1575.   file, the extensions are the IPFC defaults.
  1576.  
  1577.   If VIEW gives garbled columns and hardly readable block-titles, then it
  1578.   is most likely that you did not install (or removed) the standard fonts
  1579.   that are delivered with OS/2.  Start the 'control panel utility',
  1580.   select 'installation', 'add fonts'.  Specify in the 'from'-field
  1581.   C:\OS2\DLL (see HELP of control panel).  Now choose at least 1
  1582.   non-proportional font.
  1583.  
  1584.   Note: IPFC has a number of restrictions that you may encounter,
  1585.   especially when you try to compile large lists:
  1586.  
  1587.   ■  A "Page is too big" message, generally resulting in other errors or
  1588.      warnings to appear as well, means that the 16000 words limit is
  1589.      exceeded.  A file may not contain more than 16000 different items
  1590.      (character strings between blanks or punctuation marks).  There is
  1591.      nothing else you can do than make the list smaller (see "3.4 Data
  1592.      Selection" on page 13 for suggestions).  Sometimes a TRAP 000D
  1593.      occurs with very big lists if you ignore these error messages.
  1594.   ■  Sometimes also "invalid nesting of cgraphics tag" is displayed.
  1595.      Just ignore these!
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608.  
  1609.  
  1610.  
  1611.  
  1612.  
  1613.                                              Parameter Specifications  23
  1614.  
  1615.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1616.  
  1617.  
  1618.  
  1619.   5.0 SAMPLE OF GETTING ORGANISED
  1620.  
  1621.   Assume you are runnung MAXIMUS with BinkleyTerm as front end mailer.
  1622.   Suppose you make a distinction for file-requestors between Unknown,
  1623.   Known and Password-Protected (e.g. corresponding to Disgrace, Normal
  1624.   and Privileged MAXIMUS users).
  1625.  
  1626.  
  1627.   5.1 DOWNSORT
  1628.  
  1629.   Your downsort.cfg file might contain among others the following
  1630. | specifications:
  1631.  
  1632. |   BBSFileList  p/*  bulletin.p  -3W
  1633. |   NEWFileList  d/*  newfiles.d  -2m
  1634. |   NEWFileList  n/*  newfiles.n  -2m
  1635. |   NEWFileList  p/*  newfiles.p  -2m
  1636. |   ALLFileList  d/*  allfiles.d
  1637. |   ALLFileList  n/*  allfiles.n
  1638. |   ALLFileList  p/*  allfiles.p
  1639. |   OKFileList   d/*  okfile.d
  1640. |   OKFileList   n/*  okfile.n
  1641. |   OKFileList   p/*  okfile.p
  1642.  
  1643.   This specification will produce the following lists:
  1644.  
  1645.   ■  Bulletin.p with the last three weeks additions to your system, for
  1646.      users with a privilige up to Privil.  Note: Users with a lower
  1647.      privilege will actually see a shorter list if the file contains
  1648.      Privil entries, since each line contains a privilege control
  1649.      sequence.
  1650.  
  1651.   ■  For file requests of the magic filename NEWFILES a list of the last
  1652. |    2 months additions to your system.
  1653. |    ∙  Newfiles.D for unknown file-requestors
  1654. |    ∙  Newfiles.N for knwon file-requestors
  1655. |    ∙  Newfiles.P for Password Protected file-requestors
  1656.  
  1657.      Note that each NEW-list contains only the most recent files, but the
  1658.      contents will generally not be quite the same (depending on your
  1659.      privilege strategy).
  1660.  
  1661.   ■  For file requestors of the magic filename FILES a list, a list with
  1662. |    all files (with optional titles via Downsort.CFG specifications):
  1663. |    ∙  Allfiles.D for unknown file-requestors
  1664. |    ∙  Allfiles.N for known file-requestors
  1665. |    ∙  Allfiles.P for Password Protected file-requestors
  1666.  
  1667.      Note that each list is a complete list of what is available to the
  1668.      user of the specific privilege class, but your system will generally
  1669.      contain more files than listed for unknown and known users!
  1670.  
  1671. | ■  For your mailer you'll have:
  1672. |    ∙  Okfile.D for unknown file-requestors
  1673. |    ∙  Okfile.N for known file-requestors
  1674.  
  1675.  
  1676.                                           Sample of Getting organised  24
  1677.  
  1678.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1679.  
  1680.  
  1681.  
  1682. |    ∙  Okfile.P for Password Protected file-requestors
  1683.  
  1684.   In general: files, which the requestor is not supposed to know about
  1685.   due to his privilege status, will not be on his/her list!
  1686.  
  1687.   Note: The counters on top of the lists indicate what your system has
  1688.   available in total (including higher privileges), so a clever
  1689.   user/file-requester may come up with the question how that is possible:
  1690.   explain that he/she has to earn a higher privilege level!
  1691.  
  1692.  
  1693.   5.2 BINKLEYTERM
  1694.  
  1695. | In Binkley.Cfg you should specify for requests of FILES:
  1696.  
  1697. |   Avail        Allfiles.d
  1698. |   KnownAvail   Allfiles.n
  1699. |   ProtAvail    Allfiles.p
  1700.  
  1701. | Furthermore you need to specify different OKFILEs, for example:
  1702.  
  1703. |   OKFile       Okfile.d
  1704. |   KnownReqList Okfile.n
  1705. |   ProtReqList  Okfile.p
  1706.  
  1707.   In each of the appropriate file-request authorisation files you should
  1708. | specify the appropriate file-spec:
  1709.  
  1710.  
  1711. |  ┌───────────┬──────────────┬───────────────┬───────────────┐
  1712. |  │       in: │ OKFile       │ KnownReqList  │ ProtReqList   │
  1713. |  │ for:      │              │               │               │
  1714. |  ├───────────┼──────────────┼───────────────┼───────────────┤
  1715. |  │ .....     │ .........    │ ...........   │  ........     │
  1716. |  │ @NEWFILES │ Newfiles.d   │ Newfiles.n    │  Newfiles.p   │
  1717. |  │ @FILES    │ Allfiles.d   │ Allfiles.n    │  Allfiles.p   │
  1718. |  │ .....     │ .........    │ ...........   │  ........     │
  1719. |  └───────────┴──────────────┴───────────────┴───────────────┘
  1720.  
  1721.   This will result in sending of the appropriate NEW-list to every
  1722.   requester of the magic filename: NEWFILES.  If you use the second magic
  1723.   filename, then the Avail-lines in Binkley.Cfg are not needed, and you
  1724.   might prefer this way.
  1725.  
  1726.   Of course if the privilege level of all download areas is the same,
  1727.   this construction is not needed, but in that case it is unlikely that
  1728.   you have specified KnownAvail and ProtAvail!
  1729.  
  1730.   Downsort may create a set of OK-files for you.  The privilege system of
  1731.   MAXIMUS CBCS is used to select the download paths in this list.
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.                                           Sample of Getting organised  25
  1740.  
  1741.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1742.  
  1743.  
  1744.  
  1745.   6.0 PACKAGING
  1746.  
  1747.  
  1748.  
  1749.   6.1 AVAILABILITY
  1750.  
  1751.   The most recent version of Downsort is always downloadable and
  1752.   file-requestable from Bulletin Board PC-Square of the Dutch IBM
  1753.   employee PC club.  Locate or request DWNSRT??.* to be independent of
  1754.   the version and compression method!
  1755.  
  1756.   FIDO-net address:  2:512/4; phone:  31.75.175560 (USR HST-DS).
  1757.  
  1758.   Downsort is originally distributed in area FWBBS of the Fernwood
  1759.   collection, and may also be distributed via SDSMAX.
  1760.  
  1761.   There is a fair chance you may find a recent version on one of the
  1762.   other bulletin boards, listed in "Appendix B.  World-wide use of
  1763.   Downsort" on page 42.
  1764.  
  1765.   Downsort is distributed in 2 archives:
  1766.  
  1767.   ■  A file "DWNSRTxy.ZIP", containing all material you need to run
  1768.      Downsort, including documentation, formatted for browsing or
  1769.      printing (formfeed is the only printer-control).
  1770.  
  1771.   ■  A file "DWNSRSxy.ZIP", containing all SOURCE material.
  1772.  
  1773.   Note: 'xy' is the version indication, for example DWNSRT60.ZIP is the
  1774.   version 6.0 runtime package.
  1775.  
  1776.  
  1777.   6.2 RUN-TIME MATERIAL
  1778.  
  1779. | WHATSNEW.60f        Summary of amendments to version 6.0 of Downsort.
  1780. | DOWNSORT.EXE        32-bits execution module for OS/2 (2.0 and higher).
  1781. | DOWNSRT1.EXE        Execution module for OS/2 and DOS (Family
  1782. |                     Application)
  1783. | DOWNSORT.ICO        ICON file for DOWNSORT.EXE.
  1784.   DOWNSORT.DOC        Documentation (this file!).
  1785.   DOWNSORT.CFG        Sample configuration file.  This file contains
  1786.                       comment lines with extensive instructions how to
  1787.                       specify the parameters in the file.
  1788.   DOWNSORT.HDR        Sample BBS-list header.  You may use this header,
  1789.                       which is only imbedded in the BBS-list, to imbed
  1790.                       text and/or MECCA-sequences.  A good candidate for
  1791.                       the latter would be [onexit], which translates to
  1792.                       ^OFpath.  See the sample Downsort.HDR file!
  1793.   DOWNSORT.TRL        Sample BBS-list trailer.
  1794.   DOWNSORT.BMP        Bitmap for the IPF-list, to be included by the IPF
  1795.                       compiler.
  1796.   DOWNSORT.INC        Sample Include-file for the reports, referenced in
  1797.                       Downsort.CFG.
  1798.   DOWNSORT.MAG        Sample list of magic names to be included in
  1799.                       OKFile(s).  See BinkleyTerm documentation for
  1800.  
  1801.  
  1802.                                                             Packaging  26
  1803.  
  1804.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1805.  
  1806.  
  1807.  
  1808. |                     details of its format and contents.
  1809. | DOWNSORT.REX        Sample include file for the USRFileList (REXX
  1810. |                     prefix).
  1811. | HPFSDATE.EXE        Program to display all three timestamps of a file
  1812.                       on an HPFS volume, and optionally reset the
  1813.                       CREATION date to LASTWRITE date (helpful after
  1814.                       moving or copying of files).  Start the program
  1815. |                     without options to display command syntax and help.
  1816. |                     It is the 32-bits version, for OS/2 2.0+.  A
  1817. |                     16-bits version is included with the name
  1818. |                     HPFSDAT1.EXE.
  1819.   PACKING.LST         The actual contents of the package (produced with
  1820.                       PKUNZIP -V), added to the ZIP-file after this was
  1821.                       created with the foregoing files of this archive.
  1822. |                     This gives at least some authentication!
  1823. | UCOPY.ZIP           UCOPY package file, which is an archive itself.
  1824. |                     UCOPY is a fast file search, select and copy
  1825. |                     utility that makes use of the 'long' format of
  1826. |                     OKfile, as can be built with Downsort.  UCOPY can
  1827. |                     be used completely independent from Downsort, it
  1828. |                     only depends on OKfile(s).  It can process multiple
  1829. |                     OKfiles simultaneously.  Please read the DOC-file
  1830. |                     of UCOPY for more information.  The UCOPY.ZIP file
  1831. |                     contains:
  1832. |                     UCOPY.DOC Documentation of the UCOPY program.
  1833. |                     UCOPY.EXE DOS 3.3+ version of UCOPY
  1834. |                     UCOPY386.EXE OS/2 2.0+ version of UCOPY
  1835. |                     UC.BAT  Sample DOS batch file for use of UCOPY.EXE
  1836. |                     UC.CMP  Sample OS/2 batch file for use of
  1837. |                             UCOPY386.EXE
  1838.  
  1839.  
  1840.  
  1841.   6.3 SOURCE MATERIAL
  1842.  
  1843. | The source of Downsort is not distributed anymore since version 6.0.
  1844. | The amount of code I ever received as suggested additions or changes is
  1845. | disappointingly small.
  1846.  
  1847.  
  1848.   6.4 INSTALLATION
  1849.  
  1850.   With the following directions you should be able to setup and run
  1851.   Downsort in a very short time.
  1852.  
  1853.   1. Make a separate directory for Downsort, and make it the current
  1854.      default directory every time you run Downsort.  The separate
  1855. |    directory is a recommendation, not a requirement!
  1856.  
  1857. | 2. Copy the files DOWNSORT.EXE (or DOWNSRT1.EXE) and Downsort.CFG from
  1858.      the Downsort package into this directory.  Put also the files that
  1859.      will be included in this directory (like downsort.HDR, downsort.TRL,
  1860.      downsort.INC, downsort.REX, downsort.BMP).
  1861.  
  1862.   3. Modify (edit) the file Downsort.CFG to specify your environment and
  1863.  
  1864.  
  1865.                                                             Packaging  27
  1866.  
  1867.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1868.  
  1869.  
  1870.  
  1871.      list requirements.  The sample file contains comments to help you
  1872.      with this process.  Most specifications are obvious.  AreaDat is the
  1873.      most important parameter: Downsort won't do anything useful thing if
  1874.      it cannot find this MAXIMUS file.  See "Appendix D.  Sample
  1875.      Configuration File" on page 47 for a printed sample.
  1876.  
  1877.   4. You may give Downsort a first shot by just using its name on the
  1878.      commandline, with the command parameter -H.  This will show a brief
  1879.      HELP-screen with the possible commandline parameter specifications.
  1880.  
  1881.   5. All reports will be created in the Downsort directory, unless you
  1882.      specify  a path on the xxxFileList lines or on FILFilePath line.
  1883.      Browse the lists to see if you adapt contents and titles, and modify
  1884.      the CFG-file to your convenience.
  1885.  
  1886.  
  1887.  
  1888.   6.5 DEPENDENCIES AND RESTRICTIONS
  1889.  
  1890.   ■  Applies to MAXIMUS CBCS 2.0
  1891.  
  1892.   ■  Requires OS/2 or DOS 3.0+.
  1893.  
  1894.   ■  To convert the IPF-list into VIEW-able format, the IPF-Compiler of
  1895.      the OS/2 Program Development Toolkit is required (for the IP2-list
  1896.      the corresponding OS/2 2.0 or 2.1 version of this compiler)
  1897.  
  1898.   ■  The input FILES.BBS files are assumed to contain only
  1899.      [path\]filename.ext (the regular 8.3 format, no support for OS/2
  1900.      HPFS extended format), the remainder of the line is considered as
  1901.      file description.  The filename should be left-aligned (start in
  1902.      position 1).
  1903.  
  1904.      If a privilege modifier (^Px) is encountered in FILES.BBS then 'x'
  1905.      will become the privilege of all subsequent files (it assumes ^Px on
  1906.      a SEPARATE line, the REST OF THE LINE IS IGNORED!).  Heading,
  1907.      comments and blank lines in FILES.BBS are ignored, unless /K is
  1908.      specified on the FilFilePath line of Downsort.Cfg.  In that case
  1909.      comments following line 8 (the standard header created by Downsort)
  1910.      or headerlines from a previous run are preserved.  The modified
  1911.      privilege might be higher (generally the case) or lower than the
  1912.      area-privilege.
  1913.  
  1914.  
  1915.  
  1916.   6.6 STORAGE AND PERFORMANCE
  1917.  
  1918.   As a rough estimate of the memory requirements of Downsort, use sum of
  1919.   the following elements:
  1920.  
  1921.   ■  Program: about 120KB
  1922.  
  1923.   ■  Each area: 300 Bytes
  1924.  
  1925.   ■  Each file: 48 Bytes for each download file (excluding file
  1926.  
  1927.  
  1928.                                                             Packaging  28
  1929.  
  1930.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1931.  
  1932.  
  1933.  
  1934.      descriptions and excluding orphans if no orphan-list is genarated)
  1935.  
  1936.   ■  The sum of the file description texts (average 80 bytes/file?)
  1937.  
  1938.   ■  The sum of the comments in FILES.BBS if -K option specified
  1939.  
  1940.   If you hit a memory shortage (DOS only!), then you could do one or more
  1941.   of the following:
  1942.  
  1943. | ■  Use AreaGroups with appropriate AreaEXclude or AreaINclude to make a
  1944. |    selection of groups (for example make separate OS/2 and a DOS
  1945. |    file-lists).  Downsort will not collect information from 'excluded'
  1946.      areas.
  1947.   ■  If you have many orphans: get rid of them or do not generate an
  1948.      orphan report.  Downsort releases orphan-memory during the data
  1949.      collection phase as soon as it knows that a file is an orphan.
  1950.   ■  If you have many comment-lines in your FILES.BBS: do not specify /K
  1951.      for ALL- and IPF-lists AND do not activate the FILFilePath parameter
  1952.      in Downsort.Cfg.  Downsort will ignore comments in FILES.BBS when it
  1953.      does not need them for reporting.
  1954.  
  1955.  
  1956.  
  1957.   6.7 PROBLEMS
  1958.  
  1959.   The following known unresolved problems are in this version:
  1960.  
  1961.   ■  none
  1962.  
  1963.  
  1964.  
  1965.   6.8 WISHLIST
  1966.  
  1967.   Downsort is not finished!  There are a number of wishes and
  1968.   requirements of users and myself to include in future releases.  I list
  1969.   them below not in any particular order, but some seem to be more
  1970.   important than others, that differs from SYSOP to SYSOP.  And some are
  1971.   more easy to implement than others, which depends mainly on the author!
  1972.   Some wishes don't even make it to be listed below and are implemented
  1973.   immediately!
  1974.  
  1975.   ■  Follow the MAXIMUS development (changing AREA.DAT and other
  1976.      structures), and support several versions simultaneously.
  1977.   ■  User-configurable options for:
  1978.      ∙  week and month indicators
  1979.      ∙  indicator for continuation lines in wrapped descriptions
  1980.      ∙  [selectable] MECCA control in FILES.BBS
  1981.   ■  Logging to file in stead of stdout to obtain a history file of
  1982.      Downsort usage (can now be done with redirection!).
  1983.   ■  Support for use of 'barricaded' areas.
  1984.   ■  List with the format of IPF-list but the contents of NEW-list.
  1985.   ■  Automatic removal of 'bad' files (like .BAK-files, obsolete files,
  1986.      files that are not in FILES.BBS), maybe move them to a special
  1987.      BAD_FILE directory.  Entries in FILES.BBS should be removed
  1988. |    accordingly.
  1989.  
  1990.  
  1991.                                                             Packaging  29
  1992.  
  1993.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  1994.  
  1995.  
  1996.  
  1997. | ■  Conditional file-include, especially for FILES.BBS output.
  1998. | ■  Separate font selection for short area-headers.
  1999. | ■  Support for a 'schedule' (e.g. daily 'newfiles', weekly 'allfiles').
  2000. | ■  Support for area-privilege and key/locks in USRFileList.
  2001.  
  2002.   Remember: Was there ever a time that all your wishes were fulfilled?
  2003.   That was the most boring time of your life, wasn't it?
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.  
  2015.  
  2016.  
  2017.  
  2018.  
  2019.  
  2020.  
  2021.  
  2022.  
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.                                                             Packaging  30
  2055.  
  2056.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2057.  
  2058.  
  2059.  
  2060.   7.0 INTERNALS
  2061.  
  2062.  
  2063.  
  2064.   7.1 DEVELOPMENT ENVIRONMENT
  2065.  
  2066.   The family-version of Downsort (for OS/2 1.3 and DOS) is compiled with
  2067.   MicroSoft C compiler version 6.00a, with the IBM OS/2 Programming Tools
  2068.   and Information (generally called the OS/2 Toolkit) under IBM OS/2
  2069.   Extended Edition 1.3 as COMPACT memory model.  The generated code is at
  2070.   80286 level (Compiler option /G2), since I believe that only very few
  2071.   Bulletin Boards do use an XT these days.
  2072.  
  2073.   The 32-bit OS/2 2.0+ only version of Downsort is compiled with IBM
  2074.   C/C++ Tools version 2 and the OS/2 2.1 Toolkit.
  2075.  
  2076.   There is only a single set of source files.  A compiler variable takes
  2077.   care of the selection between 1.3 and 2.1 calls where necessary.
  2078.  
  2079.   Downsort has been tested for MAXIMUS CBCS 2.0, with the following
  2080.   Operating Systems:
  2081.  
  2082.   ■  IBM OS/2 versions 1.3 and version 2.1
  2083.   ■  IBM PC/DOS version 6.3
  2084.  
  2085.  
  2086.  
  2087.   7.2 PROGRAM ORGANISATION
  2088.  
  2089.   The program is organised as follows:
  2090.  
  2091.   ■  Initialisation:
  2092.      ∙  Read configuration file.
  2093. |    ∙  Process commandline parameters.
  2094. |    ∙  Perform some cross checking and cumulation
  2095.  
  2096.   ■  Read AREA.DAT file to collect download pathnames (only of those
  2097.      areas that will participate this time).
  2098.  
  2099.   ■  For each file-area with a privilege not exceeding the privilege
  2100.      specification of any list in this run.
  2101.  
  2102.      ∙  Read subdirectory (with find-file-first/next function).  Take
  2103.         only Normal files: ignore directory entries, Hidden and System
  2104. |       files and volume labels.  Exclude files that are specified with
  2105. |       the FileEXclude specifications.
  2106.  
  2107.      ∙  For all regular file-entries found in subdirectory:
  2108.         -  Get filename.ext, attribute, date, time, size.
  2109.         -  Obtain file-description from FILES.BBS file.  The path to the
  2110.            FILES.BBS file is (1) obtained from the "ListFile"
  2111.            specification in MAXIMUS AREA.DAT file, or (2) if not
  2112.            specified from the "DownLoad" specification (among the
  2113.            download files).
  2114.         -  Add files with explicit path specifications.
  2115.  
  2116.  
  2117.                                                             Internals  31
  2118.  
  2119.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2120.  
  2121.  
  2122.  
  2123.         -  Get file privilege 1) from areaspecification, 2) from
  2124.            FILES.BBS file if higher.
  2125.         -  If there is no orphan reporting required in this run drop
  2126.            orphan entries area-by-area.
  2127.  
  2128.   ■  For the ORP-list:
  2129.  
  2130.      If any orphan found, and the orphan-report is generated, create the
  2131.      orphan report, with the file-entries sorted on (1) area and (2)
  2132.      filename.
  2133.  
  2134.   ■  For the BBS-list:
  2135.      ∙  Sort the files primarily on descending file-timestamp (and
  2136.         secundary on file-name and area-code).
  2137.      ∙  Resort the first files on filename if so specified.
  2138.      ∙  Create output file for sorted list of filenames, -descriptions,
  2139.         etc.  The file is placed in the current subdirectory (which
  2140.         generally will be the MAXIMUS directory) with the name
  2141.         Downsort.BBS.
  2142.      ∙  Copy a headerfile (for a customized MAXIMUS bulletin).
  2143.      ∙  Put files in formatted outputfile (filename, area#, date, size,
  2144.         description), but only if description is found in FILES.BBS.
  2145.         Skip files with privilege higher than commandline (or default)
  2146.         parameter.  Precede each line with a privilege-control sequence
  2147.         (^PLx string) so that MAXIMUS users below the specified
  2148.         max-priv-level do effectively see only the files they can
  2149.         download.
  2150.      ∙  Include a trailerfile in the outputfile (for a customized
  2151.         Bulletin).
  2152.      ∙  Report non-listed files on standard output device (which might be
  2153.         re-directed to printer or disk-file).
  2154.  
  2155.   ■  If specified, put the above file collection in Newfiles.p with
  2156.      similar contents and layout as Downsort.BBS, but without BBS-control
  2157.      sequences, and without including a header and trailer file.  Produce
  2158.      a list for the default privilege (SYSOP), or one for each specified
  2159.      privilege.
  2160.  
  2161.   ■  If so specified, re-sort files on area and then filename or date,
  2162.      and create an Allfiles list, containing all files (respecting the
  2163.      privilege restrictions!).  Areas with zero files within the
  2164.      applicable privilege limit will not be listed (seem non-existing!).
  2165.      Produce a list for the default privilege (SYSOP), or one for each
  2166.      specified privilege.
  2167.  
  2168.      At the end of the list, an area summary report is generated.
  2169.  
  2170.   ■  If so specified, re-sort files on filename or date only, and create
  2171.      a GLOBAL file-list, which is an ALLFILES list without area-headers.
  2172.  
  2173.   ■  Generate a list of probably DUPlicate files if specified.
  2174.  
  2175.   ■  Generate a list of download-paths (the OK-file) if specified.
  2176.      (note: it will contain only the paths that participate in this run).
  2177.  
  2178.  
  2179.  
  2180.                                                             Internals  32
  2181.  
  2182.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2183.  
  2184.  
  2185.  
  2186.   ■  If so specified, re-sort files on area, privilege and filename, and
  2187.      create for each area a FILES.BBS-type of file.
  2188.  
  2189.   NOTE: Downsort firstly reads a directory for existing files (not
  2190.   Hidden- or System-files, and not Subdirectory or Volumelabel), and then
  2191.   reads FILES.BBS to assign a description to each file.  This means:
  2192.  
  2193.   ■  If more than 1 matching file-specification in FILES.BBS of the
  2194.      involved area is found (note that wild-card specifications in
  2195.      FILES.BBS are supported!), than the first matching description from
  2196.      FILES.BBS will appear in the lists (new in version 4.5, was 'last'
  2197.      in previous versions of Downsort).
  2198.   ■  Files for which no description is found in FILES.BBS will get "---no
  2199.      description available---" (or the replacement string you specified
  2200.      in Downsort.CFG) in the user reports.
  2201.   ■  Files for which no matching filename in FILES.BBS is found will be
  2202.      listed in the Orphan report (Downsort.ORP).
  2203.  
  2204.      Files for which there is an entry in FILES.BBS, but a corresponding
  2205.      file is not found in the directory will be reported as 'offline'.
  2206.  
  2207.      In special cases this might become a very large list.  For example
  2208.      if you collect files in a single directory for different areas, all
  2209.      the files of 'the other' areas are reported as orphan.  This will
  2210.      happen for every area, so each file might even be reported many
  2211.      times as orphan!  Since the Orphan-list is now optional (from
  2212.      version 5.0 on), this list can be suppressed.
  2213.  
  2214.      Filenames of Orphans appear only in the other reports when the
  2215.      FileList statement explicitly specifies the Hidden privilege.
  2216.  
  2217.  
  2218.  
  2219.   7.3 MAIN DATA ORGANISATION
  2220.  
  2221.  
  2222.  
  2223.   7.3.1 AREA AND FILE INFORMATION
  2224.  
  2225.   Data structure for access to file information via:
  2226.  
  2227.   1. array of file-pointers (for file-sort!)
  2228.   2. pointerchain in file-info structures
  2229.   3. file structure contains pointer to file-description
  2230.   4. file-structure contains pointer to area-information
  2231.   5. Array of area-information
  2232.  
  2233.   The organisation is shown in the following figure.
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243.                                                             Internals  33
  2244.  
  2245.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2246.  
  2247.  
  2248.  
  2249.  
  2250.   ┌──────┐
  2251.   │  dm  │
  2252.   └──────┘
  2253.       │         Array of pointers to structures with file info
  2254.       │      ┌───────────┬────────────┬───────────── . . . ──────┐
  2255.   (1) └─────>│ *file[0]  │  *file[1]  │ *file[2]                 │
  2256.              └───────────┴────────────┴───────────── . . . ──────┘
  2257.                    │           │            │
  2258.   (2)              v           v            v
  2259.   ┌──────┐     ┌──────┐     ┌──────┐     ┌──────┐
  2260.   │  ca  │ ──> │ next │ ──> │ next │ ──> │ next │ ──> . . .
  2261.   └──────┘     ├──────┤     ├──────┤     ├──────┤
  2262.    (first-     │ file-│     │ file-│     │ file-│
  2263.    element)    │ info │     │ info │     │ info │    . . .
  2264.                │ [0]  │     │ [1]  │     │ [2]  │
  2265.                └──────┘     └──────┘     └──────┘
  2266.                    │ │         │  │wildcards│ │
  2267.                    │ └──┐      │  └──┐      │ │
  2268.                    │    │      │ ┌──────────┘ │
  2269.   (3)              v    │      v v   │ ┌──────┘
  2270.                ┌──────┐ │   ┌──────┐ │ │
  2271.                │file- │ │   │file- │ │ │(files of
  2272.                │descr │ │   │descr │ │ │ same area)   . . .
  2273.                └──────┘ │   └──────┘ │ │
  2274.                         │            │ │
  2275.   (4)                   v            v v
  2276.                 ┌────────────┬─────────────┬──────── . . . ──────┐
  2277.   (5) ┌────────>│  area[0]   │   area[1]   │                     │
  2278.       │         └────────────┴─────────────┴──────── . . . ──────┘
  2279.       │              array of structures of area information
  2280.   ┌──────┐
  2281.   │ area │
  2282.   └──────┘
  2283.  
  2284.   Schematic overview of Downsort's in-storage database.
  2285.  
  2286.   Note: The area-array cannot be sorted itself: this would invalidate the
  2287.   pointers in the file-information records!
  2288.  
  2289.  
  2290.   7.3.2 BLOCK FONTS
  2291.  
  2292.   The block character image is basically a 10x7 matrix (10 vertical and 7
  2293.   horizontal 'pixels').  The pixel-array takes two rows at a time, so
  2294.   that each character can be represented with 5 rows of 7 horizontal
  2295.   'double-pixels'.  Each pixel is displayed as a solid block.
  2296.  
  2297.  
  2298.  
  2299.  
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  
  2306.                                                             Internals  34
  2307.  
  2308.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2309.  
  2310.  
  2311.  
  2312.            1 2 3 4 5 6 7
  2313.           ┌─┬─┬─┬─┬─┬─┬─┐
  2314.           │-│-│-│-│-│-│-│   line 1    (lower + upper)
  2315.           ├─┼─┼─┼─┼─┼─┼─┤
  2316.           │-│-│-│-│-│-│-│        2    (lower + upper)
  2317.           ├─┼─┼─┼─┼─┼─┼─┤
  2318.           │-│-│-│-│-│-│-│        3    (lower + upper)
  2319.           ├─┼─┼─┼─┼─┼─┼─┤
  2320.           │-│-│-│-│-│-│-│        4    (lower + upper)
  2321.           ├─┼─┼─┼─┼─┼─┼─┤
  2322.           │-│-│-│-│-│-│-│        5    (lower + upper)
  2323.           └─┴─┴─┴─┴─┴─┴─┘
  2324.  
  2325.   Each line is represented by a structure of seven 3-bit fields Each
  2326.   3-bit field represents a basic element:
  2327.  
  2328.    value    char       description
  2329.      0                 (blank)
  2330.      1     &BOXBOT.           lower half
  2331.      2       &BOXTOP.         upper half
  2332.      3         &BOX.       lower+upper halves
  2333.      4       &box34.         gray pattern
  2334.      5     &BOXLEFT.           left part of upper and lower half
  2335.      6       &BOXRIGHT.         right part of upper and lower half
  2336.      7         &box14.       gray pattern
  2337.      8      &box12.          gray pattern for not-supported characters
  2338.  
  2339.   The pitch is variable ('proportional font': a variable number of
  2340.   horizontal pixels).  Four fonts are provided with different
  2341.   character-image and size:
  2342.  
  2343.   1. 6x5 (three lines of max 5 characters)
  2344.   2. 10x7 (five lines of max 7 characters)
  2345.   3. 8x7 (four lines of max 7 characters)
  2346.   4. 10x7 (reverse video image of the 8x7 font)
  2347.  
  2348.   The following characters are supported in block-fonts:
  2349.  
  2350.      UPPER case  A..Z
  2351.      LOWER case  a..z  (but will be presented in UPPER case)
  2352.      Digits 0..9
  2353.      _  *  |  .  [  ]  (  )  /  \  -  and space
  2354.      Not-supported characters are displayed as space.
  2355.      The '~'-character (tilde) represents a full width space,
  2356.      the '`'-character (reverse quote) a half width space.
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.                                                             Internals  35
  2370.  
  2371.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2372.  
  2373.  
  2374.  
  2375.   APPENDIX A.  HISTORY OF CHANGES
  2376.  
  2377.   The paragraphs below show a brief history of changes in Downsort (most
  2378.   recent revisions on top of list!).
  2379.  
  2380.   Downsort for MAXIMUS CBCS was developed from an OPUS equivalent (by the
  2381.   same author).  The name 'Downsort' has been maintained, to prevent
  2382.   confusion, the version number is inherited (the last version for OPUS
  2383.   was 3.1).
  2384.  
  2385.  
  2386.   8.1 VERSION 6.0
  2387.  
  2388.   See also the commentlines marked '6.0' in Downsort.Cfg!
  2389.  
  2390.   This version contains some major enhancements and extensions.  With the
  2391.   change of the major version number I permitted myself some minor
  2392.   incompatibilities with previous versions!
  2393.  
  2394.   ■  Some filenames changed towards OS/2 2.1 as default operating system.
  2395.  
  2396.      description       oper_sys     old filename    new filename
  2397.      ────────────────  ────────     ────────────    ────────────
  2398.      Downsort 32-bits  OS/2 2.0+    DOWN386.EXE     DOWNSORT.EXE
  2399.      Downsort 16-bits  DOS+OS/2     DOWNSORT.EXE    DOWNSRT1.EXE
  2400.      Icon-file         OS/2 2.0+    DOWN386.ICO     DOWNSORT.ICO
  2401.      Hpfsdate 32-bits  OS/2 2.0+    HPFSD386.EXE    HPFSDATE.EXE
  2402.      Hpfsdate 16-bits  OS/2 1.3     HPFSDATE.EXE    HPFSDAT1.EXE
  2403.  
  2404.      But of course you may rename these modules for your own use as you
  2405.      like!
  2406.   ■  Introduction of AREAGROUPs.  Definition of a group of areas as a
  2407.      logical entity.  The main purpose of this feature is to be able to
  2408.      generate an even larger variety of lists in a single run of
  2409.      Downsort.  The contents of each group is defined with areaIN/EXclude
  2410.      statements, individually and most likely different for each group.
  2411.      In any xxxFileList line you may select (-Sgroup) one of the defined
  2412.      groups to generate an xxxFileList for a 'special interest group'.
  2413.      Downsort does not collect file-data it won't need, such as from
  2414.      areas that will not appear in any list of a particular run.  The
  2415.      AreaGroup facility can be a relief for DOS-users that suffer from
  2416.      memory problems when large file collections are to be listed.
  2417.   ■  xxxFileList can and should(!) now specify complete filename.ext for
  2418.      every list.  A complete path may be specified, it must be an
  2419.      existing directory.  Beware of duplicate names, and of possible
  2420.      sharing violations when another program is accessing one of the
  2421.      outputfiles while Downsort is running: the output will then not be
  2422.      created.
  2423.   ■  Duplicate download filename detection can now be on (first)
  2424.      part of filename.  New keyword "DupNameSize" specifies number of
  2425.      significant characters.  The header of DUPFileList output shows now
  2426.      some of the parametersettings.
  2427.   ■  DUPFileList can now also be sorted on file-date or area, and within
  2428.      area on filename or FILES.BBS sequence ('keep').
  2429.   ■  Specifying a font does not have influence anymore on the appearance
  2430.  
  2431.  
  2432.                                       Appendix A.  History of changes  36
  2433.  
  2434.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2435.  
  2436.  
  2437.  
  2438.      of areaheaders with the 'short' format (areanames of 3 characters or
  2439.      less) in ALL- and GBL-FileList, and output of FILFilePath).  This
  2440.      font is now (temporary?) hardcoded: Font 3.
  2441.   ■  Several changes to FILFilePath processing:
  2442.      ∙  FILFilePath should NOT specify a privilege parameter anymore!
  2443.      ∙  If FILFilePath specifies a path, the outputfiles will now always
  2444.         have the format "path\areaname.BBS" (the format "FILES.ac" has
  2445.         been abandoned).
  2446.      ∙  First 8 comment lines, if not a Downsort header, are not
  2447.         discarded aymore.  But beware: migrating from a version of
  2448.         Downsort older than 5.7 may result in pseudo duplicate headers!
  2449.      ∙  Multiple FILFilePath lines may be specified with individual
  2450.         parameters, most likely in combination with AreaGroup selection.
  2451.         Useful when you want FILES.BBS for some areas formatted
  2452.         differently than for other areas such as include file, sorting
  2453.         method, output path.  Beware not to specify 'overlapping' groups
  2454.         to prevent overwriting output of one FILFilePath by another.
  2455.      ∙  File entries in FILES.BBS of which the file is not found
  2456.         (reported by Downsort as 'offline') can now be removed from
  2457.         FILES.BBS with the '-R' flag on the FILFilePath report line.
  2458.         Removed entries will still be reported in other reports as
  2459.         'offline', but will disappear with the next run of Downsort.
  2460.   ■  A new list type 'USRFileList' has been added.  It is designed to
  2461.      build batch files with a user-specifiable 'model'-format.  File
  2462.      information can be inserted in this model via symbolic variables.
  2463.      Only existing files are listed, 'not-found' entries in FILES.BBS,
  2464.      commentlines and orphans are skipped.  With the USR-list Downsort
  2465.      offers a two-stage file maintenance: a build-phase and an
  2466.      execute-phase.  Consider the output of phase 1 as the 'advise'-list
  2467.      for phase-2.  You can modify the batch-file before executing it.
  2468.      See the bottom of the sample Downsort.Cfg for some more details.
  2469.   ■  Program history removed from documentation of versions older than
  2470.      5.5.
  2471.   ■  Downsorts hardcode bottom-lines now report Operating System version
  2472.      sub-number in two digits (e.g. OS/2 2.11)
  2473.   ■  Bug fixes:
  2474.      ∙  IPFFileList and IP2FileList now really include user-file if
  2475.         specified!
  2476.      ∙  A large block of commentlines (containing more than 2 KBytes) in
  2477.         FILES.BBS does not cause a abnormal termination of Downsort
  2478.         anymore.
  2479.      ∙  Removed insertion of extraneous blank line in FILES.BBS and
  2480.         ALLFileList for empty areas.
  2481.      ∙  Sort on file-age now again correctly on most recent of Creation
  2482.         date and LastWrite date (was problem only with HPFS volumes).
  2483.      ∙  FileExclude statement now accepts really multiple strings on a
  2484.         line!
  2485.      ∙  Long OKFileList will now contain existing files only.
  2486.      ∙  Explicit path specifications in FILES.BBS will now be retained,
  2487.         even if the file could not be located (in which case the path was
  2488.         lost!).
  2489.      ∙  Keys/locks reported in header of FILES.BBS output with privilege.
  2490.   ■  A file search and copy utility 'UCOPY' has been added.  It relies on
  2491.      Downsort's long OKFileList, but otherwise it is a self-contained
  2492.      program.  Its main function is to offer a fast file search, select
  2493.  
  2494.  
  2495.                                       Appendix A.  History of changes  37
  2496.  
  2497.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2498.  
  2499.  
  2500.  
  2501.      and copy.  It performs its task via a long OKfiles (one of the
  2502.      facilities of Downsort).  See the UCOPY.DOC in UCOPY.ZIP for more
  2503.      details.
  2504.   ■  The source will not be distributed anymore (lack of interest!).
  2505.  
  2506.  
  2507.  
  2508.   8.2 VERSION 5.9
  2509.  
  2510.   ■  Considerable changes in parameter specifications:
  2511.      ∙  Support of most commandline parameters removed!
  2512.      ∙  Support for keywords 'MaxNewFiles' and 'TitleFont' in
  2513.         Downsort.Cfg also removed: use xxxFileList for individual
  2514.         specifications for each list.
  2515.      ∙  Multiple 'xxxFileList' lines in Downsort.Cfg are supported now:
  2516.         -  You may now specify as many xxxFileLists with the same(!) or
  2517.            different list types as you need.
  2518.         -  Each xxxFileList, regardless of same or different list, will
  2519.            generate one and only one list according to its own set of
  2520.            parameters.
  2521.         -  Only a single privilege is now accepted per xxxFileList line,
  2522.            but this may now be accompanied by 'userkeys'; specification
  2523.            in the form: p/kkk.
  2524.      ∙  File sort sequence (GROUP-sort) added for NEWFileList: primary
  2525.         sort on area, then on filename.  Each group will be preceeded in
  2526.         the list by a line with areaname and description.  GROUP-sort
  2527.         works also for ORPHAN-lists, but is for all other lists synonym
  2528.         with ALPHA.
  2529.   ■  The contents of ALLFileList can now be limited by file-age, so it
  2530.      can be called a NEWFileList in the format of ALLFileList or vice
  2531.      versa.  But the SUMMARY-report ignores the file age limitation!
  2532.   ■  FILES.BBS-files will be (re-)generated also when area does not
  2533.      contain any files.
  2534.   ■  Full support of Maximus' key/lock mechanism for filearea selection.
  2535.      Key-characters follow the xxxFileList privilege, separated with a
  2536.      slash, exactly the same as the area privilege specification in
  2537.      MAX.CTL.  The privilege line in area heading will now also show the
  2538.      arealocks.
  2539.   ■  With the new keyword 'FileEXclude' you can define filespecs (with
  2540.      wildcards) of files which should not appear in any list.
  2541.   ■  Tired of the complaints about specification limits, I removed most
  2542.      of these.  For example now unlimited number of title-lines,
  2543.      areaIN/EXclude strings, non-duplicate file extensions, xxxFileList
  2544.      lines, etc.
  2545.   ■  AreaINclude and AreaEXclude can now be used simultaneously.
  2546.   ■  Files with 'future' date will be excluded from NEW-, BBS- and
  2547.      EMI-lists (special feature for certain CDROMs!).
  2548.   ■  All block fonts now support same characterset (fonts 3 and 4 have
  2549.      been extended with the characters supported in fonts 1 and 2), and
  2550.      specification of block-font parameter now honored in all lists.
  2551.      Default font for all lists changed to 3.
  2552.   ■  Performance improvements with sorts on filedate, and during
  2553.      directory scan (the latter only of 32-bits version).
  2554.   ■  bugfixes:
  2555.      ∙  Filedates beyond 2037(!) could cause empty BBS-, NEW- and
  2556.  
  2557.  
  2558.                                       Appendix A.  History of changes  38
  2559.  
  2560.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2561.  
  2562.  
  2563.  
  2564.         EMI-FileLists.
  2565.      ∙  No 'duplicates' with only case differences in short OKList
  2566.         anymore.
  2567.   ■  Downsort's companion program HPFSDATE (and the 32-bits version
  2568.      HPFS386) can now reset the creationdate of files also in other than
  2569.      current working directory.
  2570.  
  2571.  
  2572.  
  2573.   8.3 VERSION 5.8
  2574.  
  2575.   ■  Now an 'unlimited' number of files is supported, dependent only of
  2576.      available memory (virtual memory with OS/2!).  Limit was 16350
  2577.      files!
  2578.   ■  Continuation lines of file descriptions can now be indented, for
  2579.      example to align text when download counter fields are used in the
  2580.      description.  See Sample Downsort.Cfg file for details.
  2581.   ■  All filenames now translated to upper case and also reported in
  2582.      upper case in the lists.
  2583.   ■  Downsort's FILES.BBS 'header prefix' slightly changed for better
  2584.      screen presentation to online Maximus users.
  2585.   ■  Some cosmetic improvements in IPF-lists.
  2586.   ■  File size now reported in max 4 digits: KBytes or MBytes, depending
  2587.      on size, except in overviews.
  2588.   ■  Bug fixes:
  2589.      ∙  Several problems with 32-bits version related to occurances of
  2590.         filenames with lower case characters solved by translating
  2591.         filenames to upper case.
  2592.      ∙  Continuation lines in BBS-list will have now required
  2593.         privilege-prefix!
  2594.      ∙  Comments from FILES.BBS now correctly and completely represented
  2595.         in ALL-list, even with AVAstrip active.
  2596.      ∙  Explicit path specifications in FILES.BBS work now correctly.
  2597.  
  2598.   Note: This will be the last version with 'extended' commandline
  2599.   parameters.  List specification parameters will disappear,
  2600.   specification of a configuration file and some others, like 'run
  2601.   quiet/verbose', will remain.
  2602.  
  2603.  
  2604.   8.4 VERSION 5.7
  2605.  
  2606.   ■  A 32-bit version (OS/2 2.0+ only) added to runtime package, no
  2607.      functional differences with the family version.
  2608.   ■  ICON file DOWN386.ICO added for the 32-bit version of Downsort.
  2609.   ■  Long areanames (8 characters) are now supported in all reports.
  2610.   ■  Changed naming convention of 'FILES.BBS' output files when areas
  2611.      with 'long' (more than 3 character) names are used.
  2612.   ■  The "FILES.BBS"-type of output (selected with FILFilePath in
  2613.      Downsort.Cfg) now produces a slightly different header.  Downsort
  2614.      recognises its own header and an included-file without
  2615.      'multiplication'-effects.
  2616.   ■  Explicit path specifications of files in FILES.BBS are now
  2617.      supported.  As a consequence:
  2618.      ∙  The long format of OK-FileList will contain this explicit path in
  2619.  
  2620.  
  2621.                                       Appendix A.  History of changes  39
  2622.  
  2623.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2624.  
  2625.  
  2626.  
  2627.         stead of the filearea path.
  2628.      ∙  It seems more appropriate to list the pathspec in the
  2629.         DUP-FileList rather than the file description.
  2630.      Generic filenames (wildcard specifications) are NOT supported
  2631.      (yet)!
  2632.   ■  File size and date can be included in FILES.BBS output with the '-L'
  2633.      option on the FILFilePath line in Downsort.Cfg.
  2634.   ■  A new keyword 'NonDupEXT' allows suppression of reporting a file as
  2635.      'duplicate' when it is a member of a pair of files with specified
  2636.      extensions.  Example xyz.SDN and xyz.SDA can be excluded from
  2637.      DupFileList.
  2638.   ■  Doc-file now also included as provisional .INF file for OS/2 VIEW.
  2639.   ■  Improved Avatar stripping.
  2640.   ■  Bug fix for long 'new'-filelist periods (>32000 days).
  2641.   ■  Separation between progress signals (stdout) and error messages
  2642.      (stderr) and other 'internal' changes:
  2643.   ■  Preparations made to remove most commandline parameters.  It has
  2644.      been redundant for a long time.  Every Downsort specification on the
  2645.      commandline can also be made via Downsort.Cfg.  Exception:
  2646.      Specification of a configuration file will remain possible!  Good
  2647.      arguments may change this intention, so please object if I am
  2648.      overlooking something.
  2649.  
  2650.  
  2651.  
  2652.   8.5 VERSION 5.6
  2653.  
  2654.   ■  In stead of the regular OKFile format (path\*.*), there is now also
  2655.      an option (/L) to produce a LONG format of the OKFile, containing
  2656.      explicitly all files within privilege with complete
  2657.      file-specification (path\filename.ext).  Useful for file-requests at
  2658.      systems with large directories, and especially with CDROM's.  With
  2659.      this option in effect, the *.* entries will not be generated, so
  2660.      file requests are only honored with EXACT filenames: wildcard
  2661.      specifications do not work anymore!
  2662.   ■  Improved display of long areanames (>3 char) in ALL- and IPF-lists.
  2663.   ■  Avatar codes may be stripped from comment lines in reports.
  2664.   ■  Missing include-files are now only reported when running Downsort in
  2665.      -V(erbose) mode.
  2666.   ■  Some bug fixes (some of them causing Trap 000D under OS/2):
  2667.      ∙  If 'downsort.cfg' not found, return code 2 is reported, and
  2668.         downsort.cfg now closed at end of file.
  2669.      ∙  Output of FILES.BBS could be erraneous when also IP2-list
  2670.         selected.
  2671.      ∙  Limit of 217 active areas now relieved (this limit was not
  2672.         documented!).
  2673.      ∙  Improved handling of parameters of FILFilePath-line in the sample
  2674.         Downsort.Cfg file.  Also the explanatory comments are revised.
  2675.   ■  '-'-character now precedes the formfeed character in newly created
  2676.      FILES.BBS files (version 5.6h+).
  2677.   ■  Downsort source is now compilable with IBM C-Set/2 compiler and IBM
  2678.      OS/2 2.0 toolkit to obtain a real 32-bit version for OS/2 2.0+.
  2679.  
  2680.  
  2681.  
  2682.  
  2683.  
  2684.                                       Appendix A.  History of changes  40
  2685.  
  2686.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2687.  
  2688.  
  2689.  
  2690.   8.6 VERSION 5.5
  2691.  
  2692.   ■  Finally(!) a sort capability for area-sequence.  Areas can now be
  2693.      presented in order of AREA.DAT ('K'eep original sequence), sorted on
  2694.      areaname ('A'lphabetically), sorted in alphanumeric ('G'roup)
  2695.      sequence or in order of areaINclude ('I').  The group-sequence is
  2696.      useful with a popular naming convention whereby the areaname starts
  2697.      with one or more letters followed by one or more digits.  Names
  2698.      starting with a digit will be sorted as if it were all numeric, and
  2699.      will be sorted accordingly.
  2700.   ■  NEW-, BBS-list and EMI-list (see below) can now also be limited in
  2701.      length by file-age (period specification in number of Days, Weeks or
  2702.      Months).
  2703.   ■  A new list-type introduced: EMI-list (new file EMIsions).  I is a
  2704.      simple list, comparable to NEW-list.  It has a more compact format,
  2705.      and gives also file-time and the file-size (in exact bytes).  It is
  2706.      especially useful to generate messages with file arrivals over the
  2707.      last period (in combination with a period specification).
  2708.   ■  Readability improvements in IP2-list.
  2709.   ■  Documentation extended with sample output for new users of Downsort.
  2710.   ■  Some bug-fixes:
  2711.      ∙  Compares of path- and area-names now case INdependent
  2712.      ∙  Memory allocation error during collection of comments in
  2713.         FILES.BBS
  2714.      ∙  Index out-of-range in report preparation phase
  2715.      ∙  Processing of /K-option for areas with FILES.BBS but otherwise
  2716.         empty.
  2717.  
  2718.  
  2719.  
  2720.  
  2721.  
  2722.  
  2723.  
  2724.  
  2725.  
  2726.  
  2727.  
  2728.  
  2729.  
  2730.  
  2731.  
  2732.  
  2733.  
  2734.  
  2735.  
  2736.  
  2737.  
  2738.  
  2739.  
  2740.  
  2741.  
  2742.  
  2743.  
  2744.  
  2745.  
  2746.  
  2747.                                       Appendix A.  History of changes  41
  2748.  
  2749.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2750.  
  2751.  
  2752.  
  2753.   APPENDIX B.  WORLD-WIDE USE OF DOWNSORT
  2754.  
  2755.   PC-Square may be considered as the home-base of Downsort.  The most
  2756.   recent version is always available there (file-requests honoured
  2757.   between 07:00 and 24:00 local time).
  2758.  
  2759.  
  2760.  
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.  
  2777.  
  2778.  
  2779.  
  2780.  
  2781.  
  2782.  
  2783.  
  2784.  
  2785.  
  2786.  
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.  
  2794.  
  2795.  
  2796.  
  2797.  
  2798.  
  2799.  
  2800.  
  2801.  
  2802.  
  2803.  
  2804.  
  2805.  
  2806.  
  2807.  
  2808.  
  2809.  
  2810.                               Appendix B.  World-wide use of Downsort  42
  2811.  
  2812.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2813.  
  2814.  
  2815.  
  2816. | PC-Square               Lody Caenen           Koog aan de Zaan, Netherlands
  2817. | 2:512/4                                       31.75.175560
  2818.  
  2819.   Among many others, the following SYSOPs have reported running Downsort
  2820.   to make file collection lists for their users, and have a recent version
  2821.   available for download or file-request.
  2822.  
  2823.   Edlund's Point          Rolf Edlund           Varberg, Sweden
  2824.   2:203/302.13                                  46-340-20085
  2825.  
  2826.   Paradigmus Maximus      John Taylor           London, UK
  2827.   2:254/1                                       44-81-566-5393
  2828.  
  2829.   ChaOs/2                 Julien Pierre         St Remy les Chevreuse, France
  2830.   2:320/0                                       33-1-30472762
  2831.  
  2832.   Runnin' with the Devil  Stefano Sonzogni      Treviglio BG, Italy
  2833.   2:331/205                                     39-363-303567
  2834.  
  2835.   Enchufe BBS             Santiago Crespo       Madrid, Spain
  2836.   2:341/24                                      34-1-5477210
  2837.  
  2838.   Fernwood                Emmitt Dove           Branford CT, USA
  2839.   1:141/109                                     1-203-483-0348
  2840.  
  2841.   The Planet Earth        Joel Lambert          Bridgeport CT, USA
  2842.   1:141/455                                     1-203-335-7742
  2843.  
  2844.   OS/2 Shareware          Pete Norloff          Fairfax VA, USA
  2845.   1:109/347                                     1-703-385-4325
  2846.  
  2847.   Singing Bear            John Tarbox           Wilmington DE, USA
  2848.   1:150/130                                     1-302-984-2238
  2849.  
  2850.   La Jungle BBS           Stephane Seguin       Quebec, Canada
  2851.   1:163/116                                     1-819-595-4917
  2852.  
  2853.   K-W Amateur Radio BBS   Fred Hicks            Kitchener, Ontario, Canada
  2854.   1:221/177                                     1-519-578-9314
  2855.  
  2856.   The Choice BBS          Mark Woolworth        Las Vegas NV, USA
  2857.   1:209/710                                     1-702-253-6527
  2858.  
  2859.   3M Australia            Graham Stair          Pymble, NSW Australia
  2860.   3:711/409                                     61-2-498-9184
  2861.  
  2862.   Serendipity Inc         Poe Lim               Cowra, NSW Australia
  2863.   3:623/630                                     61-63-41-1859
  2864.  
  2865.   I have received reports from others.  Too many for this list, which is
  2866.   just meant to point to a system in your neighbourhood(?).  You may
  2867.   either logon to one of these boards, or perform a file-request of
  2868.   'FILES' or 'ALLFILES' to get an impression of Downsort's capabilities.
  2869.  
  2870.  
  2871.  
  2872.  
  2873.                               Appendix B.  World-wide use of Downsort  43
  2874.  
  2875.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2876.  
  2877.  
  2878.  
  2879.   APPENDIX C.  SAMPLE LISTS
  2880.  
  2881.   Below follow a number of samples of list layouts and contents.  Not
  2882.   shown are the BBS-, and IPF-lists, since these are screen- rather than
  2883.   paper-oriented, with their specific formatting and color settings.
  2884.  
  2885.   The dates and sizes in these lists have been manipulated!
  2886.  
  2887.  
  2888.   10.1 ALL-LIST
  2889.  
  2890.  
  2891.   ═══════════════════════════════════════════════════════════════════════════════
  2892.    █▀▀▀▀▀▀   █  ║ OS/2 - Fernwood - New Acquisitions
  2893.    █▄▄▄▄▄   ▄█  ║ Available: 143 files (0.0 MB)
  2894.    ██       ██  ║ Privilege: Disgrace/ABCD
  2895.    ██       ██  ║ Newest: XLIST233.ZIP  3-22-91  (avail:  7-26-91)
  2896.   ───────────────────────────────────────────────────────────────────────────────
  2897.   Filename      Size   Date    Description
  2898.   ──────────── ───── ───────── ──────────────────────────────────────────────────
  2899.   AAFONTS.ZIP     1K  3-22-91  Text from IBM regarding Anti-aliased Fonts.
  2900.   AFP_120.LZH     1K  3-22-91  Areafix 1.2 for OS/2.  Permits systems that do
  2901.                                echomail with yours to change their complement of
  2902.                                areas independently.
  2903.  
  2904.  
  2905.  
  2906.   10.2 GBL-LIST
  2907.  
  2908.  
  2909.   (Sun Jan 05 15:05) Available: 508 files (0 MB)
  2910.                      Maximum privilege shown: Sysop
  2911.                      Newest: BIGBRO.ZIP  3-22-91 (avail:  7-26-91)
  2912.                      Date flag: new on this system since: * = 1 week, + = 1 month
  2913.  
  2914.   Filename       Area    Size   Date    Description
  2915.   ──────────── ──────── ───── ───────── ─────────────────────────────────────────
  2916.   2COLDIR.ZIP  F3          1K  3-22-91  DoubleDir for OS/2
  2917.   2MONITOR.ZI  F4          1K  3-22-91  Source and .EXE for running 2 monitors.
  2918.  
  2919.  
  2920.  
  2921.   10.3 NEW-LIST
  2922.  
  2923.  
  2924.  
  2925.  
  2926.  
  2927.  
  2928.  
  2929.  
  2930.  
  2931.  
  2932.  
  2933.  
  2934.  
  2935.  
  2936.                                             Appendix C.  Sample Lists  44
  2937.  
  2938.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  2939.  
  2940.  
  2941.  
  2942.  
  2943.   (Sun Jan 05 16:14) Last 10 months newest of a total of 508 files (0 MB)
  2944.                      Maximum privilege shown: Sysop
  2945.                      Newest: BIGBRO.ZIP dd  3-22-91 (avail:  7-26-91)
  2946.                      Date flag: new on this system since: * = 1 week, + = 1 month
  2947.  
  2948.   Filename       Area    Size   Date    Description
  2949.   ──────────── ──────── ───── ───────── ─────────────────────────────────────────
  2950.   2COLDIR.ZIP  F3          1K  3-22-91  DoubleDir for OS/2
  2951.   2MONITOR.ZIP F4          1K  3-22-91  Source and .EXE for running 2 monitors.
  2952.   8514.PAT     F4          1K  3-22-91  Patch to get 32x32 icons on 8514/a
  2953.  
  2954.  
  2955.  
  2956.   10.4 EMI-LIST
  2957.  
  2958.  
  2959.   (Tue Jan 14 21:55) Last 44 weeks newest emissions
  2960.  
  2961.   --Filename-- --Date--  -Time-  -Bytes-  ---Description---
  2962.   DUMMY.DAT    10-11-91   9:45p       31  Dummy file for Downsort tests +
  2963.                continuation line
  2964.   PSOS2.ZIP     3-22-91  11:46p        2  View OS/2 Information on PM like
  2965.                Threads & Process, Memory used, and more.
  2966.  
  2967.  
  2968.  
  2969.   10.5 FILES.BBS
  2970.  
  2971.  
  2972.   - █▀▀▀▀▀▀   █  ║ OS/2 - Fernwood - New Acquisitions
  2973.   - █▄▄▄▄▄   ▄█  ║ Available: 143 files (0.0 MB)
  2974.   - ██       ██  ║ Privilege: Disgrace/ABCD
  2975.   - ██       ██  ║ Newest: XLIST233.ZIP  3-22-91 (avail:  7-26-91)
  2976.   -──────────────────────────────────────────────────────────────────────────────
  2977.   -Filename      Size    Date     Description
  2978.   -─────────── ─────── ───────── ────────────────────────────────────────────────
  2979.   AAFONTS.ZIP   Text from IBM regarding Anti-aliased Fonts.
  2980.   AFP_120.LZH   Areafix 1.2 for OS/2.  Permits systems that do echomail . . . .
  2981.  
  2982.   Note: File date and size are provided dynamically by Maximus CBCS!
  2983.  
  2984.  
  2985.   10.6 OKFILE
  2986.  
  2987.  
  2988.  
  2989.   10.6.1 SHORT FORMAT (DEFAULT)
  2990.  
  2991.  
  2992.  
  2993.  
  2994.  
  2995.  
  2996.  
  2997.  
  2998.  
  2999.                                             Appendix C.  Sample Lists  45
  3000.  
  3001.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3002.  
  3003.  
  3004.  
  3005.   @files G:\File\File01\allfiles.zip
  3006.   @avail G:\File\File01\allfiles.zip
  3007.   @newfiles G:\File\File01\newfiles.zip
  3008.   G:\File\Fernwood\*.*
  3009.   G:\File\Max\*.*
  3010.  
  3011.  
  3012.  
  3013.   10.6.2 LONG FORMAT (-L)
  3014.  
  3015.   @files G:\File\File01\allfiles.zip
  3016.   @avail G:\File\File01\allfiles.zip
  3017.   @newfiles G:\File\File01\newfiles.zip
  3018.   @DWNSRT55.ZIP G:\File\Fernwood\DWNSRT55.ZIP
  3019.   @DWNSRT56.ZIP G:\File\Fernwood\DWNSRT56.ZIP
  3020.   @MAXSRT10.ZIP G:\File\Max\MAXSRT10.ZIP
  3021.   @MAXSRT11.ZIP G:\File\Max\MAXSRT11.ZIP
  3022.  
  3023.  
  3024.  
  3025.   10.7 ORPHAN LIST
  3026.  
  3027.  
  3028.   ═══════════════════════════════════════════════════════════════════════════════
  3029.     Area    Filename      Date    FilePath
  3030.   ──────── ──────────── ───────── ───────────────────────────────────────────────
  3031.   F1       123R3UPD.ZIP  3-22-91  G:\File\Fernwood\
  3032.   F1       4019DRVR.ZIP  3-22-91  G:\File\Fernwood\
  3033.  
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.  
  3042.  
  3043.  
  3044.  
  3045.  
  3046.  
  3047.  
  3048.  
  3049.  
  3050.  
  3051.  
  3052.  
  3053.  
  3054.  
  3055.  
  3056.  
  3057.  
  3058.  
  3059.  
  3060.  
  3061.  
  3062.                                             Appendix C.  Sample Lists  46
  3063.  
  3064.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3065.  
  3066.  
  3067.  
  3068.   APPENDIX D.  SAMPLE CONFIGURATION FILE
  3069.  
  3070.   ;
  3071.   ;      ██▐███   █▐███  ██   ██ ██▐███ ██▐████  █▐███  ██▐███  ██▐████
  3072.   ;      ██   ██ ██   ██ ██   ██ ██  ██ ██      ██   ██ ██   ██   ▐██
  3073.   ;      ██   ██ ██   ██ ██ █ ██ ██  ██ ██▐████ ██   ██ ██▐███    ▐██
  3074.   ;      ██   ██ ██   ██ ██ █ ██ ██  ██      ██ ██   ██ ██ █      ▐██
  3075.   ;      ██▐███   █▐███   █▐███  ██  ██ ██▐████  █▐███  ██  ██    ▐██
  3076.   ;                                                                  (font 2)
  3077.   ;
  3078.   ;
  3079.   ; ▄▀▀▀▄ ▄▀▀▀▄ █▄  █ █▀▀▀▀ ▀█▀ ▄▀▀▀▄ █   █ █▀▀▀▄ ▄▀▀▀▄ ▀▀█▀▀ ▀█▀ ▄▀▀▀▄ █▄  █
  3080.   ; █     █   █ █▀█▄█ █▄▄    █  █  ▄▄ █   █ █▄▄▄▀ █▄▄▄█   █    █  █   █ █ ▀▄█
  3081.   ; ▀▄▄▄▀ ▀▄▄▄▀ █  ▀█ █     ▄█▄ ▀▄▄▄▀ ▀▄▄▄▀ █ ▀▄▄ █   █   █   ▄█▄ ▀▄▄▄▀ █   █
  3082.   ;                                                                  (font 1)
  3083.   ;
  3084.   ;
  3085.   ;                   █▀▀▀▀▀▀   █     █       █▀▀▀▀▀▀
  3086.   ;                   █▄▄▄▄▄▄   █▄    █▄      █▄▄▄▄▄▄
  3087.   ;                   ██        ██    ██      ██
  3088.   ;                   ██        ██    ██▄▄▄▄▄ ██▄▄▄▄▄
  3089.   ;                                                                  (font 3)
  3090.   ;                                            (font 4 is reverse video of 3)
  3091.   ;
  3092.   ;  ┌──────────────────────────────────────────────────────────────────────┐
  3093.   ;  │       Sample Configuration File for DOWNSORT by Rob Hamerling        │
  3094.   ;  └──────────────────────────────────────────────────────────────────────┘
  3095.   ;
  3096.   ;  Downsort is designed to make many lists in almost any combination
  3097.   ;  in a single run (with privilege, key/lock and areagroup selections).
  3098.   ;
  3099.   ;  Downsort can be invoked with a commandline parameter specifying another
  3100.   ;  than the default configuration filename, for example:
  3101.   ;
  3102.   ;         DOWNSORT @SPECIAL.CFG
  3103.   ;
  3104.   ;  (the '@' prefix denotes that a configuration filespec is following)
  3105.   ;
  3106.   ;
  3107.   ;  Rules for parameter specifications in a configuration file:
  3108.   ;  ===========================================================
  3109.   ;   - Leading blanks and empty lines are skipped.
  3110.   ;   - Lines with '%', '*' or ';' as first non-blank character are
  3111.   ;     considered to contain comments only and are skipped.
  3112.   ;   - Lines with a valid keyword but without any parameters, are also
  3113.   ;     considered to be comment lines and are skipped.
  3114.   ;   - Comments on parameter specification lines are not allowed.
  3115.   ;   - All parameters for a specific keyword should be on a single line.
  3116.   ;   - Of mutually exclusive values only the last will take effect.
  3117.   ;   - An asterisk (*) as parametervalue denotes default-value.
  3118.   ;   - Invalid or not-recognised parameters may be ignored without notice.
  3119.   ;
  3120.   ;  ───────────────────────────────────────────────────────────────────────
  3121.   ;  First the specifications for the data collection phase
  3122.   ;  ───────────────────────────────────────────────────────────────────────
  3123.  
  3124.  
  3125.                                Appendix D.  Sample Configuration File  47
  3126.  
  3127.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3128.  
  3129.  
  3130.  
  3131.   ;
  3132.   ; AreaDat:     Complete file-specification of your 'AREA.DAT' file.
  3133.   ; -------      AREA.DAT is built by MAXIMUS' SILT(P) with -a or -x option.
  3134.   ;              The path is normally specified in MAX.CTL with the option
  3135.   ;              AreaDat in Session Section. With the AreaDat you may
  3136.   ;              specify any file that has the SILT(P)-format.
  3137.  
  3138.     AreaDat      area.dat
  3139.   ; AreaDat      g:\lody\max\area.dat
  3140.  
  3141.   ; AreaGroup    Defines the logical name of a group of areas for a list.
  3142.   ; ---------    AreaINclude and or areaEXclude statements following this
  3143.   ; 6.0          AreaGroup statement define the collection of area's for this
  3144.   ; 6.0          group (see AreaINclude and areaEXclude keywords).
  3145.   ; 6.0          A new AreaGroup closes the previous.
  3146.   ; 6.0          During data collection only required areas are processed.
  3147.   ; 6.0          Some directions on the use of AreaGroups:
  3148.   ; 6.0          - The groups are independent: areas may be member of more
  3149.   ; 6.0            than one group, other areas may not be in any group.
  3150.   ; 6.0          - Groups without any areaIN/EXcludes will include all areas.
  3151.   ; 6.0          - If at least one list doesn't specify an areagroup file info
  3152.   ; 6.0            of all area's is collected (but always listed).
  3153.   ; 6.0          - The examples give you just an idea how to handle groups,
  3154.   ; 6.0            the doc-file gives you more details.
  3155.  
  3156.   ; AreaINclude  Select areas to be INCLUDED in the group.
  3157.   ; AreaEXclude  Select areas to be EXCLUDED from the group.
  3158.   ; -----------  Normally (by default) ALL area's will be included,
  3159.   ;              unless you use one or both of these keywords.
  3160.   ;              Specify 1..8 character strings to indicate which areas have
  3161.   ;              to be INcluded or EXcluded explicitly. The strings are used
  3162.   ;              as PREFIX: all areanames starting with the same characters
  3163.   ;              will be IN- or EXcluded. The selection is case-insensitive.
  3164.   ;              You would normally use one of both keywords. However they
  3165.   ;              can be used simultaneously. But since the strings are used
  3166.   ;              as prefix this gives only meaningful results if the EXclude
  3167.   ;              strings are more selective than the INclude strings:
  3168.   ;              EXclude applies in that case only to INcluded area's!
  3169.   ;              You may specify multiple strings on a line (separate the
  3170.   ;              strings with one or more blanks), and as many lines as
  3171.   ;              needed.
  3172.   ;              Example: Suppose you have fileareas named HC000 to HC999.
  3173.   ;              Then the group HOBBES below would select the files from
  3174.   ;              areas HC000 to HC039, but NOT those ending with a '9'.
  3175.  
  3176.   ; AreaGroup  Fernwood
  3177.   ;    AreaINclude  FA FB FC FD FE FF FG F1 F2 F3 F4 F5 F6 F7 F8 F9
  3178.   ; AreaGroup  DOS
  3179.   ;    AreaEXclude  HC F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF FG
  3180.   ; AreaGroup  OS2
  3181.   ;    AreaINclude  O I
  3182.   ; AreaGroup  HOBBES
  3183.   ;    AreaINclude  hc00  hc01  hc02  hc03
  3184.   ;    AreaEXclude  hc009 hc019 hc029 hc039
  3185.   ; AreaGroup  SDS
  3186.  
  3187.  
  3188.                                Appendix D.  Sample Configuration File  48
  3189.  
  3190.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3191.  
  3192.  
  3193.  
  3194.   ;    AreaINclude  SDS
  3195.   ; AreaGroup  NONSDS
  3196.   ;    AreaEXclude  SDS
  3197.  
  3198.  
  3199.   ; FileEXclude  Select FILES to be excluded from ALL(!) lists.
  3200.   ; -----------  By default all files in all (selected) areas will be
  3201.   ;              consifdered for inclusion, unless you use this keyword.
  3202.   ;              Specify 8.3 filename.ext type of strings, wildcards are
  3203.   ;              allowed and honored, don't use quotes.
  3204.   ;              The selection is case-insensitive and is independent of area.
  3205.   ;              You may specify multiple filespecs on a line. Separate the
  3206.   ;              strings with one or more blanks. Use as many lines as needed.
  3207.  
  3208.     FileExclude  FILES.*    *.BAK        SYSTEM*.?BS   DIR.?BS
  3209.     FileExclude  00INDEX.*  WILDCAT.TXT  DESCRIPT.ION  TEST
  3210.  
  3211.   ;  ───────────────────────────────────────────────────────────────────────
  3212.   ;  Above parameters involve the data collection (selection) process,
  3213.   ;  below follow the report specifications.
  3214.   ;  Firstly the global parameters that apply (mostly) to all reports:
  3215.   ;  ───────────────────────────────────────────────────────────────────────
  3216.  
  3217.   ; AreaOrder    Order in which areas have to be sorted.
  3218.   ;              Selection can be: K[eep]    - Keep order of AREA.DAT
  3219.   ;                                A[lpha]   - Alphabetic order of areaname
  3220.   ;                                G[roup]   - Group order
  3221.   ;                                I[nclude] - order of areaINclude (above)
  3222.   ;              Specify one of these orders (first letter is sufficient).
  3223.   ;              'Group'-order is a special sorting sequence for area names
  3224.   ;              consisting of a group of letters followed by digits.
  3225.   ;              See the documentation for details.
  3226.   ;              Default: Group-order (also with invalid specifications)
  3227.  
  3228.     AreaOrder    Group
  3229.  
  3230.   ;  Title:      Short string that will be displayed in BLOCK-characters
  3231.   ;  -----       on top of all FileLists (except BBS-list).
  3232.   ;              Not more than 20 characters are accepted as input.
  3233.   ;              If Title isn't specified, it will be DOWNSORT by default.
  3234.   ;              The following characters are supported in block-fonts:
  3235.   ;                  UPPER case  A..Z
  3236.   ;                  LOWER case  a..z  (but will be presented in UPPER case)
  3237.   ;                  Digits 0..9
  3238.   ;                  _  *  |  .  [  ]  (  )  /  \  -  and space
  3239.   ;              Not-supported characters are displayed as blank.
  3240.   ;              The '~'-character (tilde) represents a full width space,
  3241.   ;              the '`'-character (reverse quote) a half width space.
  3242.  
  3243.     Title        `DownSort
  3244.  
  3245.   ;  PreTitle    Lines to be displayed immediately before the BLOCK-title.
  3246.   ;  --------    The lines will be copied as is. However leading blanks will
  3247.   ;              be skipped, no wrapping or truncation will be applied for
  3248.   ;              'long' lines, '~' (tilde) characters are translated to
  3249.  
  3250.  
  3251.                                Appendix D.  Sample Configuration File  49
  3252.  
  3253.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3254.  
  3255.  
  3256.  
  3257.   ;              blanks. You may specify 20 PreTitle lines, excess is
  3258.   ;              ignored. Empty PreTitle lines are ignored and not counted.
  3259.   ;              There is no default PreTitle.
  3260.   ;              To create empty lines in your header specify a PreTitle
  3261.   ;              with a tilde.
  3262.  
  3263.     PreTitle     ~
  3264.     PreTitle     ~~~~~~~<═════:═════ p r e - t i t l e ═════:═════>
  3265.     PreTitle     ~
  3266.  
  3267.   ;  SubTitle    Lines to be displayed immediately below the BLOCK-title.
  3268.   ;  --------    Maximum 20 SubTitles are accepted, and exactly the
  3269.   ;              same rules apply as for PreTitle.
  3270.   ;
  3271.  
  3272.     SubTitle     ~
  3273.     SubTitle     ~~~~~~~<═════&═════ s u b - t i t l e ═════&═════>
  3274.     SubTitle     ~  Overview of downloadable files on this magnificent Board
  3275.     SubTitle     ~     Node number 9.999/99, modemspeeds: V.99/V.99bis
  3276.     SubTitle     ~~~~~~~<═════════════════════════════════════════>
  3277.     SubTitle     ~
  3278.  
  3279.   ;  BottomLine  Lines to be displayed at the end of the filelist.
  3280.   ;  ----------  Maximum 20 BottomLines are accepted, and exactly the
  3281.   ;              same rules apply as for PreTitle and Subtitle.
  3282.   ;
  3283.  
  3284.     BottomLine   ~
  3285.     BottomLine   ~~~~~~~<═══════ b o t t o m : t i t l e ═════════>
  3286.     BottomLine   ~
  3287.     BottomLine   ~~~~~~~<═══ How do you like DOWNSORT, folks? ════>
  3288.     BottomLine   ~
  3289.  
  3290.   ; DupNameSize  Indicates the number of characters of the fileNAME that are
  3291.   ; -----------  maximally to be compared to consider a name 'duplicate'.
  3292.   ; 6.0          Allows version numbers to be detected, for example:
  3293.   ; 6.0          with "DupNameSize 6" DWNSRT59.ZIP and DWNSRT60.ZIP will
  3294.   ; 6.0          appear as duplicates in the DupFileList report.
  3295.   ; 6.0          Default: 8  (full filename compare).
  3296.  
  3297.     DupNameSize  8
  3298.  
  3299.   ; NonDupEXT    Suppress reporting as 'duplicate' if 2 files with equal
  3300.   ; ---------    filenames but unequal extensions are defined as 'pair'.
  3301.   ;              The example specification below has the effect that files of
  3302.   ;              any pair "xyz.SDA" and "xyz.SDN"  ("xyz": any filename) will
  3303.   ;              not be listed in DupFileList.
  3304.   ;               -  Files with equal filename AND equal extension will
  3305.   ;                  still be reported as duplicate even when the extension
  3306.   ;                  is one of a 'NonDupEXT' pair!
  3307.   ;               -  Multiple extensions must be specified in as many pairs
  3308.   ;                  as can be formed (3 extension 3 pairs; 4 ext. 6 pairs;
  3309.   ;                  etc, e.g: for Nodelists:  DAT EXT  DAT IDX  EXT IDX).
  3310.   ;              You may specify multiple extension-pairs on a line
  3311.   ;              (separate the extensions with blanks), and as many lines
  3312.  
  3313.  
  3314.                                Appendix D.  Sample Configuration File  50
  3315.  
  3316.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3317.  
  3318.  
  3319.  
  3320.   ;              as needed.
  3321.   ;              Default: no suppression
  3322.  
  3323.     NonDupEXT    SDN SDA
  3324.  
  3325.   ; OrphanDesc   Description text of 'orphan' (file without entry in FILES.BBS)
  3326.   ; NotFoundDesc Description text of files without description in FILES.BBS.
  3327.   ; ------------ The description will replace the default hard-coded text.
  3328.   ;              Up to 45 characters may be specified.
  3329.   ;              The '~' (tilde) character will not be translated here!
  3330.  
  3331.     OrphanDesc   ~~~~~ !!!! Orphelin !!!! ~~~~~
  3332.     NotFoundDesc ~~~ Ce fichier défie toute description!
  3333.  
  3334.  
  3335.   ; OfflineDesc  When a filespecification is found in FILES.BBS but not
  3336.   ; -----------  in the corresponding download directory, this text replaces
  3337.   ;              the filesize and date (right aligned).
  3338.   ;              Up to 14 characters are accepted.
  3339.  
  3340.     OfflineDesc  -- archived --
  3341.  
  3342.   ; AVAstrip     You may wish to strip off AVATAR graphics characters from
  3343.   ; --------     the contents of your FILES.BBS files.
  3344.   ;              Specify 'No' to deactivate stripping (default is 'Yes').
  3345.   ;              ==> Works ONLY for COMMENT LINES in ALL- and IPF-lists, and
  3346.   ;              remember: comments are only listed with KEEPSEQ (no sort).
  3347.  
  3348.     AVAstrip     Yes
  3349.  
  3350.   ; ──────────────────────────────────────────────────────────────────────
  3351.   ; Above were the parameters with a global effect: applicable to all
  3352.   ; lists or to the execution mode of DOWNSORT.
  3353.   ; Below follow list-specific parameters, which might override some of
  3354.   ; the settings of the global parameters.
  3355.   ; Keep this sequence: first global, then specific parameters!
  3356.   ; ──────────────────────────────────────────────────────────────────────
  3357.   ;
  3358.   ; xxxFileList:  Create a File lists of type 'xxx' (1 list per keyword)
  3359.   ;
  3360.   ; xxx ───┐      ┌─ Twit
  3361.   ;              ├─ Disgrace          ┌─ PathSpec of the output file
  3362.   ;   ┌── ORP     ├─ Limited           │
  3363.   ;   ┌── BBS     ├─ Normal            │
  3364.   ;   ┌── NEW     ├─ Worthy            │  ┌── Additional options for
  3365.   ;   ┌── ALL     ├─ Privil            │  │   each list individually:
  3366.   ;   ┌── GBL     ├─ Favored           │  │
  3367.   ;   ┌── DUP     ├─ Extra             │  │ -A     Alphabetic sort (filename)
  3368.   ;   ┌── IPF     ├─ Clerk             │  │ -Cn    Continuation-line indent
  3369.   ;   ┌── IP2     ├─ Assistsysop       │  │ -D     Date sort (descending)
  3370.   ;   ┌── OK      ├─ Sysop             │  │ -F#    Font for titles (0..4)
  3371.   ;   ┌── EMI     ├─ Hidden            │  │ -G     Group sort (areanames)
  3372.   ;   │           │                    │  │ -If    Imbed filespec
  3373.   ;   │           │                    │  │ -K     Keep FILES.BBS seq
  3374.   ;   │           │                    │  │ -L     Long line/list type
  3375.  
  3376.  
  3377.                                Appendix D.  Sample Configuration File  51
  3378.  
  3379.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3380.  
  3381.  
  3382.  
  3383.   ;   │           │  ┌── userkeys      │  │ -R     Remove 'not-found' entries
  3384.   ;   │           │  │   1..8          │  │ -Sg    Select AreaGroup
  3385.   ;   │           │  │   A..X          │  │ -T     Truncate file descript.
  3386.   ;   │           │  │                 │  │ -W     Wrap file descriptions
  3387.   ;   │           │  │                 │  │ -X     eXclude priv. in headers
  3388.   ;   │           │  │       ┌─────────┘  │ nnn[P] entries limit: number
  3389.   ;   │           │  │       │            │        (P=Days|Weeks|Months)
  3390.   ;                                   
  3391.   ;  ═══─═══════  ═/════ ════════  ════════════════════════════════
  3392.   ;  xxxFileList  p/keys PathSpec  Option-1 Option-2 . . . Option-n
  3393.   ;
  3394.   ;      A single privilege letter (or the complete word) can be specified.
  3395.   ;      The privilege indication may be followed by slash and a string of
  3396.   ;      'userkeys' may be specified. This mimics a Maximus user class and
  3397.   ;      will open the list for areas with the corresponding locks.
  3398.   ;      WARNING: Versions of Downsort before 5.9 included locked area's, but
  3399.   ;               now these area's will be skipped, unless all keys are
  3400.   ;               specified on the xxxFileList line!
  3401.   ;      For an explanation of 'locks' and 'keys' see the MAXIMUS docs.
  3402.   ;      If no privilege/key is specified, the default level is SYSOP with
  3403.   ;      no userkeys.
  3404.   ;
  3405.   ; 6.0  The default filename (DOWNSORT) for each list should be overwritten
  3406.   ; 6.0  with the second parameter on the xxxFileList line. Failing to do so
  3407.   ; 6.0  will result in a single outputfile that has overwritten all other
  3408.   ; 6.0  lists of this and previous runs of Downsort.
  3409.   ;
  3410.   ;  The following flags may be specified (in any sequence):
  3411.   ;     -A   Sort Alphabetically on filename
  3412.   ;     -D   Sort on Date/time of the files
  3413.   ;     -G   Sort on on area-Group name
  3414.   ;     -K   Keep sequence of files as they appear in FILES.BBS.
  3415.   ;          Note: not all sorts apply to all list types (but most do)
  3416.   ;
  3417.   ;     -Cn  Continuation Indentation of description: relative position
  3418.   ;          of description on second and following lines if WRAPPED
  3419.   ;          descriptions are used. 'n' will normally be the width of
  3420.   ;          a download counter field.
  3421.   ;          May be specified negative for left-indentation (e.d. -C-16)!
  3422.   ;
  3423.   ;     -F#  ListTitle font. Choose for 'n': 0, 1, 2, 3 or 4 (default is 3).
  3424.   ;          Valid numbers:   0 .. suppress generation of block title!
  3425.   ;                           1 .. Simple font             (5x6 pattern)
  3426.   ;                           2 .. Pseudo-Stencil Font     (7x10 pattern)
  3427.   ;                           3 .. ROBoComputer Font       (7x8 pattern)
  3428.   ;                           4 .. Reversed Video RoboComp (7x8 pattern)
  3429.   ;          See some samples of the fonts in the top of this file.
  3430.   ; 6.0      Font 3 is hard coded in headers with only short areanames.
  3431.   ;
  3432.   ;     -If  Imbed userfile ('f' is file-spec) immediately following the
  3433.   ;          block-title. The contents of the file is included without any
  3434.   ;          translation, so beware of special characters and effects like
  3435.   ;          formatting (word-wrap) especially in the IPF- and IP2-list!
  3436.   ;          NOTEs: - does not apply to DUP- and ORP-FileLists
  3437.   ;                 - BBSFileLists imbed always DOWNSORT.HDR and DOWNSORT.TRL
  3438.  
  3439.  
  3440.                                Appendix D.  Sample Configuration File  52
  3441.  
  3442.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3443.  
  3444.  
  3445.  
  3446.   ;
  3447.   ;     -L   Long list format for some selected list types:
  3448.   ;           - OK-file: explicit filenames in stead of wildcards (PATH\*.*)
  3449.   ;           - FILFilePath: see (almost) at the end of this file.
  3450.   ;
  3451.   ; 6.0 -R   Remove 'offline' file-entries from FILES.BBS only!
  3452.   ; 6.0      Other lists will have these files reported as 'offline', but
  3453.   ; 6.0      next time you run Downsort they will have disappeared of course.
  3454.   ; 6.0      So you have one chance to recover these entries (manually!).
  3455.   ;
  3456.   ; 6.0 -Sg  Select AreaGroup for list ('g' is a name defined with AreaGroup
  3457.   ; 6.0      keyword). The list will only contain areas of the specified group.
  3458.   ; 6.0      If no selection is specified, all areas within privilege will be
  3459.   ; 6.0      included.
  3460.   ;
  3461.   ;     -T   Causes Truncation of long descriptions (to about 50 characters)
  3462.   ;          so that each file-entry takes not more than a single line.
  3463.   ;     -W   Causes Wrapping of long descriptions: the report will contain
  3464.   ;          as many lines as needed for the complete file description.
  3465.   ;
  3466.   ;     -X   eXclude privilege indications the list-headers.
  3467.   ;
  3468.   ;   nnn[P] Limit the number of file-entries to a maximum of 'nnn'.
  3469.   ;          If followed by Period-indicator ('D', 'W' or 'M') the list is
  3470.   ;          limited not by number, but by file-AGE in Days, Weeks or Months.
  3471.   ;          NOTEs: - the Period-letter does not apply to IPF-lists
  3472.   ;                 - 'nnn' denotes maximum number of files on a VIEW-page.
  3473.   ;                 - ALL-lists can only be limited by period (not number).
  3474.  
  3475.     AllFileList  */*   list\Allfiles.psq     -a -W              -IDownsort.Inc
  3476.   ; AllFileList  */*  list\Allfiles.hob      -k -W   -sHOBBES   -IDownsort.Inc
  3477.   ; AllFileList  */*  list\Allfiles.fw   -f1 -a -W   -sFernwood -IDownsort.Inc
  3478.   ; AllFileList  */*  list\Allfiles.dos      -k -W   -sDOS      -IDownsort.Inc
  3479.   ; AllFileList  */2  list\Allfile2.psq   2m -a -w -f4 -x -c
  3480.     BBSFileList  */*  list\Bulletin.psq   3w -d -w -x
  3481.   ; GblFileList  */*  list\GblFiles.psq      -a -w     -c6      -IDownsort.Inc
  3482.   ; IpfFileList  */*  list\Allfiles.IPF  200 -a
  3483.   ; Ip2FileList  */*  list\Allfiles.IP2  200 -k    -f1 -sOS2
  3484.     NewFileList  */*  list\Newfiles.psq   3w -D -w -x -sLocked
  3485.   ; NewFileList  */2  list\Newfile2.psq   2m -g -w -f2 -x
  3486.   ; EmiFileList  */*  list\Newfiles.emi  15d -a -w              -IDownsort.inc
  3487.  
  3488.   ; DupFileList  */*  list\Dupfiles.psq
  3489.     DupFileList  */*  list\Dupfiles.grp      -g
  3490.   ; OKFileList   */*  list\OKFILE.psq        -g                 -IDownsort.Mag
  3491.   ; OKFileList   */*  list\OKFILE.FWa        -a -l
  3492.   ; OrpFileList  */*  list\Orphans.psq       -g
  3493.  
  3494.   ;  NOTE: The IPF-list has the format of an INPUT-file for the
  3495.   ;        Information Presentation Facility Compiler (IPFC).
  3496.   ;        It should be compiled as follows:
  3497.   ;             IPFC  Allfiles.IP2  /INF
  3498.   ;        This will produce a file called Allfiles.INF, which is ready
  3499.   ;        to be viewed with the command:
  3500.   ;             VIEW  Allfiles
  3501.  
  3502.  
  3503.                                Appendix D.  Sample Configuration File  53
  3504.  
  3505.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3506.  
  3507.  
  3508.  
  3509.   ;        The IPFC program is not distributed with the DOWNSORT package!
  3510.  
  3511.   ; ──────────────────────────────────────────────────────────────────────
  3512.   ;  Below follow the specifications for rebuilding FILES.BBS
  3513.   ; ──────────────────────────────────────────────────────────────────────
  3514.   ; FILFilePath  - First parameter is [optional] specification of
  3515.   ; -----------    destination directory of newly generated 'FILES.BBS' files.
  3516.   ;                Use the format:  drive:\path\
  3517.   ;                The output-files will be called "areaname.BBS".
  3518.   ;                If not specified the MAXIMUS path specification will be
  3519.   ;                used (ListFile parameter if used in Maximus' AREA.CTL
  3520.   ;                otherwise the Download directory).
  3521.   ;              - Many but not all flags as defined for the other lists
  3522.   ;                apply to the FILES.BBS-output of Downsort, for example:
  3523.   ;                 - TITLE is not applicable to FILES.BBS
  3524.   ;                 - file-description will be kept on a single line, not
  3525.   ;                   wrapped or truncated, and up to about 2000 characters.
  3526.   ;                 - Entries can be sorted, but then you will loose your
  3527.   ;                   comments: -K (Keep Sequence and Comments) is default.
  3528.   ;                 - -L (LONG) means here: include file size and file date,
  3529.   ;                    (which should be used only once per FILES.BBS!).
  3530.   ;                 - Avatar codes will always remain unchanged.
  3531.   ; 6.0             - -R will REMOVE file entries in FILES.BBS if the file
  3532.   ; 6.0               it describes could not be located by Downsort.
  3533.   ; 6.0          - When using -Sg and multiple FILFilePaths, beware not to
  3534.   ; 6.0            overwrite previous output (e.g. define and use mutually
  3535.   ; 6.0            exclusive groups, such as the SDS and NONSDS example above).
  3536.   ; 6.0          ┌─── NOTE: Privilege specification not used anymore!
  3537.   ;              
  3538.  
  3539.   ;  FILFilePath  list1  -k                 -idownsort.inc
  3540.      FILFilePath  list2  -a     -sLocked    -idownsort.inc
  3541.  
  3542.   ; ──────────────────────────────────────────────────────────────────────
  3543.   ;             ---------  E X P E R I M E N T A L  ----------
  3544.   ; ──────────────────────────────────────────────────────────────────────
  3545.   ; USRFileList   Builds a straight forward list of 'free format' lines
  3546.   ; -----------   with file information.
  3547.   ; 6.0           It is designed to build a batch-file for file maintenance.
  3548.   ; 6.0           The format of each line is a variable string to be specified
  3549.   ; 6.0           with the keyword 'USRmodel'. The format-string may contain
  3550.   ; 6.0           a number of symbolic variables that will be replaced by
  3551.   ; 6.0           the actual value of file- or area-information as follows:
  3552.   ; 6.0            %2 - duplicate file flag: '2' if duplicate file, '1' if not.
  3553.   ; 6.0            %A - Areaname
  3554.   ; 6.0            %C - file Creation date (fixed 8 characters)
  3555.   ; 6.0            %D - most recent of file lastWrite or Creation date
  3556.   ; 6.0            %F - Filename.ext
  3557.   ; 6.0            %H - File-age in days
  3558.   ; 6.0            %P - Path specification of the file's download directory
  3559.   ; 6.0            %S - file Size
  3560.   ; 6.0            %W - file lastWrite date (fixed 8 characters)
  3561.   ; 6.0           Notes: - unknown symbolic variables are copied asis.
  3562.   ; 6.0                  - specify a double percent-sign if a single is needed.
  3563.   ; 6.0
  3564.  
  3565.  
  3566.                                Appendix D.  Sample Configuration File  54
  3567.  
  3568.   Maximus Download File Sort and List Utility (OS/2 and DOS)
  3569.  
  3570.  
  3571.  
  3572.   ; 6.0           A number of example statements as suggestions:
  3573.   ; 6.0           - The first example builds a batch file (REXX) to move
  3574.   ; 6.0             Fernwood files from their original directory to a directory
  3575.   ; 6.0             with areaname as the subdirectory-name in G:\Fernwood\.
  3576.   ; 6.0           - The second sample will erase files older than 1 year.
  3577.   ; 6.0           - The third will erase ALL duplicate files, so needs at least
  3578.   ; 6.0             some modification before you run it!
  3579.   ; 6.0           - The fourth USRmodel is the default and shows all symbolic
  3580.   ; 6.0             variables supported by Downsort for USRFileList.
  3581.   ; 6.0           NOTE: Only one single USRmodel-statement is supported yet
  3582.   ; 6.0                 (but multiple lists can be generated)!
  3583.  
  3584.   ;  USRmodel    move '%P%F G:\Fernwood\%A\'
  3585.   ;  USRmodel    if %H > 365 then erase '%P%F'   /* filedate: %D */
  3586.   ;  USRmodel    if 2=%2 then erase '%P%F'
  3587.      USRmodel    %%2=%2 %%A=%A %%C=%C %%D=%D %%F=%F %%H=%H %%P=%P %%S=%S %%W=%W
  3588.  
  3589.      USRFileList   */*  list\usrlist.cmd  -g    -idownsort.rex
  3590.  
  3591.   ;  ------------------------------------------------------------------------
  3592.   ;
  3593.   ; End of sample Downsort.Cfg as provided with the orginal Downsort package.
  3594.   ;
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.  
  3622.  
  3623.  
  3624.  
  3625.  
  3626.  
  3627.  
  3628.  
  3629.                                Appendix D.  Sample Configuration File  55
  3630.