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 This specifies the fully-qualified file name of the config.sys file to be processed. This is the only required keyword. 2. /OUT 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.