


                               CONFIGSORT 1.3

                       By Philip A. O'Malley (C)1996


1.1 INTRODUCTION

    The heart of an OS/2 system  is its config.sys file. Unfortunately, this
file starts out as an organizational  mess  and  then gets worse as numerous
applications modify it. Enter ConfigSort.

    ConfigSort will take a  config.sys  file  and  convert it into something
substantially more functional.  Additionally,  ConfigSort  also  knows about
multiple entries belonging to certain  applications  and will group any such
entries into sections at the end of the file with a helpful comment.

    The difference is quite astounding, as I'm sure you'll agree. :)


2.1 REQUIREMENTS

    ConfigSort is a REXX program which  has  been compiled using RxCls. As a
consequence you must have REXX installed, which  comes as a standard part of
the OS/2 3.0 distribution.

    Additionally, the RXEXTRAS.DLL is also needed as ConfigSort uses some of
the functions contained in that  library.  It  should be placed somehwere in
the LIBPATH. "/OS2/DLL" is usually a good place.


2.2 LICENCE FOR USE

    ConfigSort is an original program, copyrighted to the author. It may not
be modified in any shape or form.  It can be freely distributed providing no
charge is made beyond those to cover media expenses and the like.

    ConfigSort is provided "as  is"  and  any  damage,  actual or perceived,
caused by the program is not the  liability  of  the author. Your use of the
program signifies your acceptance of these conditions.

    If you have no problems with the above, then onwards... :)


3.1 USAGE AND SYNTAX

    ConfigSort is command-line driven. All options are invoked, or prefixed,
by keywords and are:

 1. /IN <FQFN>

    This specifies the fully-qualified file  name  of the config.sys file to
    be processed. This is the only required keyword.

 2. /OUT <FQFN>

    This specifies an output file for ConfigSort to write to.

    If this keyword is not specified then the original /IN file is backed-up
    with a .bak extension and then overwritten.

 3. /NOAPPS

    By default, multiple entries made by  an  application are grouped into a
    section at the end of the file. This keyword disables this facility.

 4. /NOSORT

    By default, all SET statements  are  sorted into descending alphabetical
    order. This keyword disables this facility.

 5. /NOUPPER

    By default, all lines in the  processed file are turned upper-case, with
    the exeception of the information held  in SET statements.  This keyword
    disables this facility.


3.2 EXAMPLES

    This section is just intended  to  visualise  the above into something a
little more tangible. Three examples of syntax are shown below:

 1. PROCESS "F:\CONFIG.SYS" (AND BACKUP TO F:\CONFIG.BAK)

    cfgsort /in f:\config.sys

 2. PROCESS "F:\CONFIG.SYS" AND OUTPUT TO "F:\CONFIG.NEW"

    cfgsort /in f:\config.sys /out f:\config.new

 3. PROCESS "F:\CONFIG.SYS" WITH ALL OPTIONS OFF

    cfgsort /in f:\config.sys /noapps /nosort /noupper


3.3 KNOWN APPLICATIONS

    Currently, ConfigSort knows about the following applications:

        1.  EXT2FS
        2   IBM DualStor.
        3.  IBM EWS OS20MEMU
        4   IBM MPTS (basic support).
        5   IBM TCP/IP v2.0 (Bonuspak IAK).
        6   IBM TCP/IP v3.0 (Warp Connect).
        7   IBM WebExplorer 1.1b
        8   PMView
        9   SIO Serial drivers.
       10.  SUBST/2

    NB. 2.  The knowlage of Multi-Protocol Transport Services, found in Warp
            Connect, is basic  at  best.  It  comprises  the dial-up support
            drivers for TCP/IP 3.0. As  I  don't  run  a LAN based system, I
            can't include support for this area of MPTS.


4.1 VERSION HISTORY

    1.3  23/06/96

         # Fixed all the internal gremlins with mixed-case.

         + Added case-support for  SET  variables.  Now  ConfigSort will NOT
           alter the case of any information assigned to a variable with the
           SET command. This was a much requested revision.

         # Fixed a problem when  parsing  filenames without a fully-qualifed
           path. These  are  typically  BASEDEV  entries.  Previously, these
           entries would not get sorted into an application section.

         # Fixed the SET statement parsing.  Previously if there was a space
           before or after the '=' sign  the  entry wouldn't get sorted into
           the correct section.

         + Added application support for PMVIEW, EXT2FS and OS20MEMU.

         + Modified applications support for MPTS and TCP/IP v3.0 to include
           the new entries made by  the  IBM  ServicePaks. I've also removed
           some SET variables and placed them in an IBM related section.

    1.21 19/05/96 (Unreleased)

         # Fixed a case-sensitivity problem with the /IN command.

    1.2  14/05/96

         + Added the /NOUPPER option. Previously ConfigSort changed the case
           of the config.sys to uppercase  without option, which could cause
           problems with ANSI sequences for command prompts, etc.

         + Added support for the  IBM  WebExplorer  1.1b SET statements into
           the network sections.

    1.11 28/04/96

         = Added IFCONFIG.EXE to the TCP/IP applications sorting. This was
           an oversight and caused problems for some people.

    1.1  16/04/96

         - Removed the /SORT option. Previously it shuffled REM'd entries to
           the bottom of a configuration  section,  but as some drivers have
           to be loaded in a correct  order,  for example the sound drivers,
           unREMing those lines later caused  problems  if the correct order
           couldn't be remembered. Thus,  I  decided  that  it could be more
           trouble than it was worth, so it's now gone...

         + SET statements are now sorted into descending alphabetical order.

         + Added the /NOSORT  option.  This  stops  all  SET statements from
           being sorted.

         - An oversight in the  docs  saying  that  the RXEXTRAS.DLL came as
           part of the  OS/2  distribution.  Apologies  to  those  who, as a
           result, couldn't get the program to actually run. :(

         - A bug was introduced into 1.0 at the last moment due to brainfade
           on my part and no subsequent testing. Basically ConfigSort didn't
           strip out it's own REM statements which caused them to accumulate
           when a saved file was reprocessed. Minor but annoying.

    1.0  05/04/96

           First public release.


5.1 AFTERWORD

    ConfigSort was written as nothing  else satisfied my requirements. Since
the initial release I've had quite a bit of very positive feedback about the
program. I would like to thank all  those  people who reported bugs and gave
me ideas for for future  releases.  I  would  especially  like to thank Gary
Hammer for putting the program on his  WWW site as the program really seemed
to take off after that.


5.2 VERSION 1.3

    Due to other commitments, ConfigSort v1.3 has been delayed. Apologies to
those who wanted the features released in this version a few weeks back.


5.3 CONTACTS

    Any suggestions or comments about ConfigSort  would be very welcome. I'm
available for a chat at the following addresses:

    internet : phil.omalley@zetnet.co.uk
    fidonet  : "Phil O'Malley" at 2:250/107.96

Phil O'Malley, June 23rd 1996.
