
                          HISTORY FILE FOR WCL
                          --------------------

Version 7.30a (March 1994)
--------------------------

Fixed a bug in the search engine for the SEEK command which sometimes
led to a truncation in the display of the names of directories. This
bug also affected the DIR/S command.

Version 7.30 (March 1994)
--------------------------
New features;

  1. WCL now has an UNZIP feature - to extract files from ZIP archives
     created by PKUNZIP and other ZIP utilities. This feature is based
     on freeware source code produced by the Internet INFO-ZIP group.
     This is implemented by the new "UNZIP" command.

  2. A new command "RUNDOS" has been introduced. Sometimes, users
     experience some problems with some DOS programs. A typical situation
     is a case where the user is trying to pass some parameters to a DOS
     program (e.g., to redirect output from the DOS program to a file).
     If you have persistent problems with running a particular DOS
     program through WCL, and nothing else works, try the RUNDOS command.

     This is used by typing "RUNDOS" before the name of the program to
     be executed. What this does is to call your DOS command interpreter
     (i.e., the "COMSPEC" environment variable) and then pass to it
     anything that appears after the "RUNDOS" command. This is in effect
     equal to running the program from the DOS prompt.

  3. A new file WCLCODE2.DLL has been added to the package.

  4. You can now have a choice of fonts in the "small" WCL window, through
     a new setting in the INI file, "DEFAULT-FONT".

  5. You can now give the main the "small" WCL window a border, through a
     new setting in the INI file, "WINDOW-BORDER". When the window has a
     border, it can be resized, to REDUCE its WIDTH only.



Version 7.20 (March 1994)
--------------------------
New features;
  1. WCL can now UUencode and UUdecode files. There are 2 new commands

      ENCODE - UUencodes a file
      DECODE - UUdecodes a file

   Each of them takes only ONE parameter - the name of the file to encode
   or decode. The DECODE command is a bit slow - but there you are.
   Thanks for Robert Swart for the UUencode/decode routines.

  2. You can now print the contents of the WCL window. With BIGWCL, you use
     a new command "PRINTSCR". If this command is run without any parameter,
     the contents of the window buffer are written into an ascii file called
     BIGWCL.SCR. You can however direct output to the printer by supplying
     "LPT1" or "PRN" as a parameter, and you can direct output to another
     ascii file by supplying another file name.

        eg

          PRINTSCR               - output to BIGWCL.SCR
          PRINTSCR PRN           - ouput to the printer
          PRINTSCR SCREEN.TXT    - output to SCREEN.TXT

     This command does not work with the small windowed version, because
     there is nothing to print there. However, when you run commands like
     "DIR" from the small windowed version, a "Print Window" menu item is
     inserted into the window. Clicking on that menu item brings up a
     dialog that allows you to direct output to the printer, or to an
     ascii file called WCL.SCR.


  3. New command "EXECWAIT", or "EW" added. This is for use in running
     EXTERNAL programs through WCL batch files. What it does is to cause
     WCL to WAIT until the program being run has terminated, before running
     the next command in the batch file. To use EXECWAIT, all you need to do
     is to put it before the command that you would normally type.

     eg

       EXECWAIT NOTEPAD TEST.TXT

     You can use this command instead of the "PAUSE" and "DELAY" commands.


  4. New file WCLCODE.DLL added to the package


Version 7.10a (March 1994)
--------------------------
A bug that sometimes caused GPFs has been fixed.

Version 7.10 (March 1994)
------------------------
This is a mojor upgrade.

1. Full command-line editing introduced. You can use the left and right
   ARROW KEYS, Backspace, Delete, Ins, Home, and End, to move about and edit
   the commands being entered, and also to edit the commands that have
   been brought up through DOSKEY scrolling. Thanx to Stephen Ryan for
   the line editing function.

2. This command-line editing is optional. It is turned on by the
   "LINE-EDITOR=" line in WCL.INI. You can turn it off and on temporarily
   by using the new command "LINE-EDITOR ON" (to turn it on) or
   "LINE-EDITOR OFF" (to turn it off). If DOSKEY emulation is not
   enabled, command-line editing will not work.

   When command-line editing is enabled (the default setting in WCL.INI),
   the text being typed at the command line will scroll horizontally on
   the same line, and you can move left or right with the cursor keys.
   If when the prompt is typed, the cursor is less than 20 characters from
   the end of the WCL window, the cursor will move to the next line to allow
   more room for the commands to be typed.

   When command-line editing is turned off, then the text being typed will
   wrap onto the next line. In this case, you cannot go back to the
   previous line.

3. New command "SENDMESSAGE" added. You can use this command to send
   messages to any active application through its process ID number.
   The process IDs are obtained by the "LISTWINS" command.

   The messages that can be sent are "HIDE" (tell the process's main
   window to hide itself); "MAX" (tell the process's main window to
   maximise itself); "MIN"  (tell the process's main window to
   minimise itself); and "NORMAL" ( (tell the process's main window to
   restore itself to the normal display.

   It is the user's responsibility to make sure that the correct process
   is being sent the message.

4. New commands "PAUSE" and "DELAY" added. These are for use in WCL batch
   files (ie. those with .CBF extension). Both of them are useful for those
   occasions when you want the commands in the .CBF file to be executed in
   the order in which they appear.

   Put "PAUSE" on the line following a command, and then WCL will pause
   for a key press before executing the next line in the batch file.

   Put "DELAY", and WCL will stop for a bit, and then continue with the
   batch execution. "DELAY" can take one parameter - the number of
   SECONDS that WCL should wait for.  If no parameter i supplied,
   WCL assumes a DELAY value of 1 second.

   NOTE: there is an UPPER LIMIT of 300 (5 minutes) for this parameter.
         This is an arbitrary limit fixed by me, and if enough people
         request its removal, I can remove all limits.

      examples;

         DELAY                  {will wait for 1 second}
         DELAY 5                {will wait for 5 seconds}
         DELAY 180              {will wait for 180 seconds - 3 minutes}
         DELAY 1800             {will wait for 300 seconds - 5 minutes}


5. The number of lines allowed in WCL batch files has been increased from
   20 to 30.

6. Commands in WCL batch files will now be echoed on the screen before they
   are executed. If you want this behaviour to change, you need to put the
   line "ECHO OFF" at the beginning of each WCL .CBF batch file. You can
   turn the ECHO on again in the batch file by putting "ECHO ON" before the
   next command that you want to be echoed to the screen.

7. You can now use "REM" in a WCL batch file. Any line that starts with
   a REM will not be executed. Note that there MUST be a space between
   the REM and any other text on the line.

8. The search engine used for the SEEK command has been revamped. It is
   now considerably faster than before (at least 100% faster). Thanx to
   Duncan Murdoch for all his input into the new search routines.


9. A new "TIMER" feature has been added. This is enabled by the new
   "SHOW-TIMER=" setting in WCL.INI, or by typing "TIMER ON" at the
   WCL prompt. Note that this feature has a number of very serious
   limitations - so you might not want to use it at all.


   What it does is to activate a very pathetic on-screen clock. It is
   pathetic because it has a number of problems;
    [a] it stops being updated if the input focus changes from the WCL
        window (until the input focus is returned to the WCL window -
        if you are running under OS/2, and until the mouse is moved over
        the desktop or the WCL window if you are running under Windows);

        The situation under OS/2 is so as to allow better multi-tasking
        when WCL is in the background.

    [b] it is displayed inside the WCL window by default. This can cause
        a number of problems with untidy screen displays, when the PROMPT,
        or the commands being typed over-run the ticking clock, or when
        the WCL window is moved from one place to another.

        The only other place I have managed to implement the display of
        the clock is on the Windows desktop (at the top right corner).
        You can use this option by setting the "TIMER-ON-DESKTOP=" line
        in WCL.INI to "ON" or "1", or by typing "TIMER-ON-DESKTOP ON" at
        the WCL command prompt. This does not work in seamless Win-OS/2.

        The problems with displaying the clock on the Desktop are, [a] that
        the clock can be covered by other windows, and, [b] when WCL is
        closed, you can see still see the last clock display on the Windows
        desktop (you can get rid of this by maximising a window, and then
        restoring it to normal again).

    [c] There are problems if you try to run FULL SCREEN DOS programs when
        the timer is ON - often you just get dumped unceremoniously to the
        DOS command prompt. Thus, if you are going to run FULL SCREEN DOS
        programs from WCL, then you should NOT enable the timer feature,
        or you should type "TIMER OFF" before running the program.

   In short, this "TIMER" feature is NOT very good, and that is why it is
   turned OFF by default. If you find that it is NOT good enough for you to
   use, then you can forget that I have said that it exists, and leave it
   disabled. If you can live with its short-comings, then you can always
   turn it on. You can also turn it off for the current session by typing
   "TIMER OFF" at the WCL command prompt.

   When I can improve on this feature, I will do so - but don't hold your
   breath. After all, a ticking clock is an un-necessary feature.


10. A number of bugs has been fixed (they all concerned the routines that
    accept user input at the command prompt).


Version 7.01 (February 1994)
----------------------------
1.  More adjustments made to improve multi-tasking under OS/2 and
    Windows NT, this time, to include both instances when WCL is
    running in the background, and when it is running in the foreground.

2.  The problem which led to arrows keys sometimes having to be pressed
    twice to implement DOSKEY-like scrolling has been fixed.


Version 7.00a (February 1994)
----------------------------
Very minor adjustment made to improve multi-tasking under OS/2 and
Windows NT when WCL is running in the background.


Version 7.00 (February 1994)
----------------------------
This is a major update which presents a number of new features that
have been under development for a long time.


New Features
------------
1. Emulation of DOSKEY's scrolling through a list of past commands
   by pressing the arrow keys. The UP and LEFT arrow keys (and Ctrl-Z)
   scroll UP the list, while the DOWN and RIGHT arrow keys (and Ctrl-X)
   scroll DOWN the list.

   The commands can then be executed, or edited, using the BACK-SPACE
   only.

   This feature can be turned on or off by a new setting "EMULATE-DOSKEY"
   in WCL.INI. It can also be turned on or off temporarily by using
   a new command "DOSKEY" (ie, "DOSKEY ON", or "DOSKEY OFF").


   A known problem with this feature is that sometimes you may have to press
   an arrow key twice, before you get the scroll. This does not happen
   when you use Ctrl-Z or Ctrl-X. I have so far been unable to find a way
   of remedying this situation. If this bothers you, then you should use
   Ctrl-Z to scroll up, and Ctrl-X to scroll down.


2. Assigning commands to FUNCTION KEYS (F1 to F9, and F11 to F12),
   and the CONTROL KEY + AN ALPHABET (CTRL-A to CTRL-Y, but MINUS
   CTRL-C, CTRL-G, CTRL-H, CTRL-M, CTRL-T, and CTRL-X - these are
   reserved).

   The commands have to be assigned manually in KEYS.WCL.
   Any command can be assigned to any of these keys, and any entry is
   executed literally, EXACTLY as it appears in KEYS.WCL.

   Of all the function keys, only F1 and F3 are preset, but they can
   be changed.

   "F1=HELP"   - invokes the on-line help
   "F3=*"      - an asterisk fetches the last command (like F3 in DOS)


   None of the CTRL key combinations is preset.

   This feature is disabled if the EMULATE-DOSKEY setting (above) is
   turned off.

   A known problem with this feature is that sometimes you may have to press
   a function key twice, before the command is executed. I have so far been
   unable to find a way of remedying this situation.

3. The number of commands kept in the command line history has been
   increased from 20 to 30. Only the first 20 will be displayed when
   you type "LIST" or "!" - but you can access all 30 with the DOSKEY
   scrolling emulation.


4. With regard to the way WCL runs external programs, some users have
   complained about the fact that WCL sometimes changes to the directory
   in which the executable for the program was found, before running it.
   This feature exists for many reasons (partly to do with Windows
   itself), but it can be circumvented. I have decided to keep that
   feature as the default, but to permit users to circumvent it.

   This is implemented when the user types "DO" before the name of the
   program to be executed. This is explained in more detail below.


   You can dispense with having to type "DO" all the time by setting
   the "DO=" line in WCL.INI to "1", or "ON" (i.e., "DO=1"). With this
   setting, WCL will behave as if you have typed "DO" before the name
   of *every* program that you want to execute. This setting is NEW
   (with version 7.0), and is disabled by default.

   Note that turning on this setting may cause some programs not to
   work properly by virtue of not being able to locate their own data
   files. Thus it may be better to leave this setting disabled, and
   to use the "DO" command on a case-by-case basis.


5. Also with regard to the way WCL runs DOS programs, some users have
   complained about the fact that WCL sometimes closes the DOS window
   before they can read the output from the window. This is actually
   a function of Windows, not WCL. However, I have provided an effective
   (if inelegant) way to bypass this. This is implemented when the user
   types "SPAWN" before the name of the program to be executed.

   When you do this, WCL puts everything that appears after "SPAWN" into
   a batch file, and executes the file. When the file has finished
   executing, you are invited to press ENTER to return to WCL.


New Commands:
-------------
1. "RENAMEWIN" - to change the title of the main window of any active
                 process (by using its process ID number)
2. "KILLPROG"  - to terminate any active process (using its process ID)
3. "LISTWINS"  - to present a list of the currently active processes, and
                 their process ID numbers (so that you can supply the
                 correct ID number to RENAMEWIN or KILLPROG.
4. "DOSKEY"    - to enable or disable DOSKEY EMULATION and FUNCTION KEY
                 support.

                 "DOSKEY ON"   - enables DOSKEY emulation
                 "DOSKEY OFF"  - disables DOSKEY emulation

                 This does NOT change the setting in WCL.INI and is active
                 for the current WCL session only.

5. "DO"        - if this is typed before the name of an external program
                 then WCL will remain in the current directory while
                 running that program, and will not change to the program's
                 directory as it sometimes does.

                 The only use of this command is as a prefix to whatever
                 you would normally have typed. Thus if you would normally
                 type;

                        "PKUNZIP WINCMD*.ZIP"

                 you would now type;

                        "DO PKUNZIP WINCMD*.ZIP"


                 Most people will never need this command, but it is there
                 anyway.


6. "SPAWN"    - this is explained above. If it is typed before the name of
                a DOS program that is to be executed, WCL keeps the dos
                window open after the program has executed, until you press
                a key. NOTE: do NOT use this command to run Windows programs.
                It will most certainly NOT work.


                With this command, you can also get WCL to execute the
                COMMAND.COM version of internal DOS commands (eg DIR,
                PATH, SET, COPY) - instead of the WCL version.


                e.g.

                "DIR *.DOC" - this will execute WCL's own DIR command

                but;

                "SPAWN DIR *.DOC" - this will execute the COMMAND.COM
                version of DIR, in a separate DOS window.


NOTE:
-----
From version 7.00 onwards, I will no longer be bundling the ASCII file
WCL.TXT with this package. It has become too large, and is superfluous,
since all the information therein can be found in the on-line help. The
file has been replaced in the package with WCL.SUM - a plain ASCII file
which is just an alphabetical list of the WCL internal commands. Note
that the file does not elaborate on the commands. It only LISTS them.
Full information on each command can be found in the on-line help.


Version 6.50 (January 1994)
---------------------------
Two new commands added.

1. "SYSDIR" : this command changes to the Windows (or Win-OS/2)
    SYSTEM directoy, where ever it is.

2. "WINDIR" : this command changes to the Windows (or Win-OS/2)
    directory.


Version 6.40 (January 1994)
---------------------------
1. New parameter "/DELETE" added to the "SEEK" command. This is useful
   for getting rid of files of a particular specification. The deletion
   takes place in the current directory tree only. If you want to use it
   to delete a file spefication through out the whole drive, you have to
   run this from the ROOT directory. Use this parameter with care! You
   are only given ONE warning.

       eg

        SEEK *.BAK /DELETE

   This will seek for all files with a *.BAK extension, in the CURRENT
   directory tree, and delete any matching ones.

   If the file specification is "*.*", the /DELETE parameter will NOT be
   accepted.


2. The search engine for the SEEK command has been improved. Users should
   see slightly increased performance.

3. Some internal re-structuring has been undertaken, to enhance
   compatibility with OS/2 v2.1 and Windows NT.

4. Excess baggage due to an attempt to support Windows 3.0 has been removed.
   This program will still work under Windows 3.0, but certain commands will
   not work. Thus, if you still have Windows 3.0, then sorry. I have to
   assume that everyone has now moved on to Windows 3.1, or WFWG 3.11



Version 6.30 (December 1993)
----------------------------

1. New feature - aliases for commands - or "command aliases", added. Up till
   now, aliases have been available only for directories. Now you can have
   an alias for any command, up to a MAXIMUM of 30 aliases. This requires a
   new "[commands]" section in WCL.INI. Unlike the directory aliases which
   require WCL.INI to be read each time, command aliases are loaded into
   memory only ONCE - when WCL is loaded. Thereafter, they are processed
   from memory, until you exit the current WCL session. This makes the
   feature as fast as internal WCL commands. This feature is a bit like the
   UNIX "alias" feature.

   One restriction is that the whole line on which the alias exists
   cannot be more than 79 characters in length.

       Examples;

        [commands]
        SYSDIR=DIR C:\WINDOWS\SYSTEM
        CWCL=CD C:\WCL

   Note that the command aliases are evaluated *before* internal and
   external commands.

2. New command "NEWCOMMAND" introduced. This command is for the purpose
   of creating a new command alias (see above), without having to edit
   WCL.INI manually. This command inserts the new alias into WCL.INI, and
   retains it in memory for use during the current session.

   Syntax

       NEWCOMMAND <Alias Name> <Command>

   Examples;
       NEWCOMMAND BACKIT COPY *.DOC A:\
       NEWCOMMAND CT COPYTREE

3. New command "LISTCOMMANDS" introduced. This produces a list of the
   first 20 command aliases.

4. New command "HOME" added. This command changes to the WCL home
   directory.

Version 6.20 (November 1993)
----------------------------
1. New command "COPYTREE" added. This copies a filespec in a
   directory tree to another location, re-creating the directory
   tree in the destination drive/directory. It is a bit like the
   DOS "XCOPY /S" command. There are some restrictions with this
   command.

2. Fixed a number of minor bugs.

3. The .TXT file WCL.TXT has become too big for the Windows NOTEPAD
   to handle. From this version onward, when you type "HELP2" or "H2"
   or "??" then WCL.TXT will be loaded into the Windows WRITE program,
   and NOT the Windows NOTEPAD as in earlier versions.

4. In view of (3) above, I am seriously considering leaving WCL.TXT out
   of the documentation.

5. This program is getting bigger!


Version 6.10 (November 1993)
----------------------------
Fixed a bug in the search engine used for the SEEK, DIR /S and the
DELTREE commands.


Version 6.00 (October 1993)
---------------------------
This is a major update.

1.  New command "COLOR" introduced as an easy means of setting the
    foreground and background colors, and the wallpaper, respectively.
    The command inserts the supplied parameters into WCL.INI.

       e.g.,  "COLOR blue gray gray"

2.  New command "GETCOLOR" introduced. This allows the user to see the
    current color settings in WCL.INI, without using an editor to
    view the INI file.

3. New command "CLS" introduced. This clears the screen, and the contents
   of any scroll back buffer.

4.  A host of minor bugs have been fixed.

5.  Due to popular demand, a new command "DELTREE" has been implemented.
    This command attempts to delete ALL the files in a given diretory
    tree. This includes all the files in that directory, and in its
    subdirectories. It then attempts to erase all the subdirectories
    in that directory tree.

    NOTE: I have implemented this command against my better judgment,
          because users demanded it. In my opinion, it is best left
          well alone. If anybody proceeds to use it, I am not responsible
          for any loss of data that may ensue.

          Because of the drastic nature of what DELTREE does, I have
          imposed some limitations;

            1. You will be asked to confirm TWICE that you wish to proceed.

            2. You must supply the name of a valid directory to the
               command. Just typing "DELTREE" will be rejected. You
               need to type something like "DELTREE D:\JUNKMAIL"

            3. The command will reject any attempt to apply it to
               the ROOT directory of any drive.

                   e.g., "DELTREE \"
                   or    "DELTREE C:\"

               these will NOT be accepted.

            4. If there is any problem with deleting any file at all, then
               the process will abort.


Version 5.10 (October 1993)
---------------------------
1.  A new switch "/S" is added to the "DIR" command. This lists files
    in the directory tree, which match the supplied filespecs.

    Note that the files listed by this switch are NOT sorted at all.
    Note also that this switch CANNOT be used with any other switch
    that begins with a "/".

Version 5.07 (October 1993)
---------------------------
1. Users can now set both the text and background colors. This
   involves three new settings in WCL.INI;
        [a]  TEXT-COLOR=
        [b]  TEXT-BACKGROUND=
        [c]  WALLPAPER=

   See WCL.TXT or the help file for full details.

Version 5.06 (October 1993)
---------------------------
1. Bug that caused text not to appear in the BIGWCL window on some
   systems was fixed.

2. Other minor bugs fixed.

3. You can now insert a space after your prompt by adding a hash
   ("#") to the end of the prompt (e.g., "PROMPT Hello:#" - this
   will cause a space to be inserted after the "Hello:". Do not
   use the hash with "$P$G".

4. Cosmetic changes made to the "DEL" command.

5. New installation program. This is now optional.

6. Default setting of the BIGWCL main window now set to provide a
   scroll back buffer.


Version 5.05 (October 1993)
---------------------------
The "SEEK" command has been rewritten. It now works by locating
all the files that match the filespecs, searching through the
whole drive. It can now accept wildcard characters.

Version 5.00 (October 1993)
---------------------------

1.      A new executable (BIGWCL.EXE) is added to the package. This is
        basically the same program as WCL.EXE, but with some differences;
          [a] the main window is big
          [b] the output from commands (such as DIR, COPY, TYPE) is in the
              main window, instead of in popup windows (as WCL.EXE does)
          [c] the executable does not require the library file WCLDLL.EXE
          [d] the introduction of BIGWCL.EXE has resulted in some more
              entries being added to the WCL.INI file, to cater for the
              screen co-ordinates of the BIGWCL main window. Apart from
              these new entries, BIGWCL.EXE uses the entries in the WCL.INI
              file in the same way as WCL.EXE
          [e] BIGWCL.EXE is probably faster than WCL.EXE for most commands,
              but uses more memory.

       I expect users to use either WCL.EXE or BIGWCL.EXE as their WCL
       program, since they do more or less the same thing. However, there is
       no reason why the user cannot use both of them.

2.     New switches (/O[E,S,D] /L /W) are added to the DIR command, to
       increase compatibility with the DOS DIR command. The /W switch is
       only implemented in BIGWCL.EXE. The /O parameter is for changing the
       order in which the files are sorted. Type "DIR /?" to see the options
       available.


Version 4.61 (October 1993)
---------------------------
        Fixed a bug involving copying files with the read-only attribute,
        from a write-protected disk.

Version 4.60 (October 1993)
---------------------------
1.      Parameters can now be passed to programs called in WCL batch files,
        just like in DOS. Up to 3 parameters can be passed to a program,
        through the use of "%" (e.g., %1 %2 %3).

2.      Some minor bugs were fixed

3.      Program efficiency has been improved. First, memory usage has
        decreased by about 40kb. This has been achieved by certain
        optimizations, and static linking of routines that were formerly
        called from a supplied DLL. Secondly, many operations are now
        marginally faster.


Version 4.50 (June 1993)
------------------------
        This is the first general release. The program has before now been
        released only to a few people, mainly friends and acquaintances.





(c) 1994, Dr. A. Olowofoyeku
    268 Horwood,
    Newcastle,
    Staffs ST5 5BQ
    ENGLAND.

    E-mail: 
      laa12@keele.ac.uk
      chief@mep.com

