
                HISTORY FILE FOR CHIEF'S INSTALLER PRO
                --------------------------------------
Version 2.80 (March 1996)
----------------------------
1. A number of bugs fixed
2. $HIDE-OTHERS-PROGRESS (to prevent showing the entries being made into
   INI files and the registry).
3. New batch command: "IF ENV-VAR" - to check for the existence of an
   environment variable, and execute the specified command if it exists.
   The environment variable is returned in "ENV-VAR", which can be used
   in the command.

   Syntax = IF ENV-VAR <"variable"> <command [ENV-VAR]>
   e.g.,
   IF ENV-VAR "progdir" WRITEINF $TEMPDIR\WINSTALL.INF;$TARGET=ENV-VAR

4. New batch command: "IF GETINI". This command checks whether a 
  specified entry exists in an INI file, and, if so, executes the 
  specified command. If the entry exists, its value is returned in
  GETINI, which can be used in the command. If the INI file is not 
  found, or if no value exists for the entry (or the entry does not 
  exist) then the command is not executed. 
  
  Syntax =
   IF GETINI;<ApplicationName>;<KeyName>;<FileName>;<command [GETINI]>

  e.g.,
   IF GETINI;ChiefPro;HomeDir;$DEST\CHIEF.INI;SAY Entry = GETINI !!

5. New SLOVENE language DLLs


Version 2.60 (January 1996)
---------------------------
1. New batch command; "MAKEICON". This uses the same syntax as the "$ICO"
   reserved word. The command is for those occasions where you may need
   to create ICONS before calling a program (e.g., MS Setup for Win32s)
   which will itself reboot Windows. This command should be used VERY
   sparingly.

2. New batch command; "IF BITSPIXEL". This returns the number of bits 
   per pixel in respect of the display. Basically, this can be translated
   into the number of colors supported by the current display driver.
	4  = 16 colors
	8  = 256 colors
	16 = 64000 colors
	24 = 16.7m colors

	e.g., 
	   IF BITSPIXEL 8 SAY You have a 256 color display!
	   IF BITSPIXEL 24 SAY You have a True Color display!

3. New feature in SETUP.EXE - an INF file can now be passed as the first
   parameter to SETUP.EXE, preceded by a front slash (i.e., "/"). The
   file will be passed on to INSTALL.EXE as the INF file to use (instead
   of WINSTALL.INF). SETUP.EXE will remove the slash and append the 
   extension ".INF" to the parameter. The file MUST be on DISK #1 - it 
   will be copied to the TEMP directory, and then passed on to 
   INSTALL.EXE.

	e.g.,  SETUP /LAN
	- SETUP.EXE will look for an INF file called "LAN" or "LAN.INF", 
	(in that order), copy it to the TEMP directory, and then pass
	it to INSTALL.EXE as the INF file to use for the installation.

4. Bug in $LAN-SYSDIR fixed.


Version 2.50 (December 1995)
---------------------------
1. This is the version that is optimised for Win32 environments (NT and
   Win95). It will still run as normal under 16-bit versions of Windows,
   but it now features extensive calls to the Win32 API (when running
   under NT or Win95). This includes 
	[a] 32-bit registry functions (you can specify roots other than
            HKEY_CLASSES_ROOT\ under Win95 and NT)
	[b] long filename supprt. Note however, that it is NOT recommended to use
   	    long filenames with spaces in the names. This will cause some problems
   	    with the parser.
        [c] support for long filenames can be disabled by putting the 
	    following line in *both* WINSTALL.INF and AUTOCALC.INI;
		$LONG-FILENAMES=DISABLED

	
	NOTES:  * long filenames are not supported within ZIP archives
		* current versions of Microsoft's COMPRESS.EXE do not
		support long filenames (at least, I haven't seen one
		that does).					

2.  AMENDMENTS TO $REG-DATA ---- THE SYNTAX HAS CHANGED!!!
    The syntax of $REG-DATA has changed - for many reasons, but mainly to provide
    new facilities when running under Win32. Please note that the old syntax will
    only work to create keys, not to assign values to them.
 
    The new syntax is;
   
    either;
    [a] $REG-DATA=<KeyName>[;<valueName>]

     ** this must be used to CREATE keys. It will create the key "keyname" and set 
        its value to "valuename" (if supplied, otherwise the value will be an empty 
        string);

        examples:
	  $REG-DATA=HKEY_LOCAL_MACHINE\ChiefPro
	  $REG-DATA=HKEY_LOCAL_MACHINE\WCL;Windows Command Line Processor

    OR;
    [b] $REG-DATA=<KeyName>;<valueName>;<ValueData>[;<ValueType]

       ** this will assign the value in "valuedata" to "valuename", in the key
        "keyname". The value type is optional and defaults to REG_SZ

         examples: (after creating the "ChiefPro" key as in the example above)
	  $REG-DATA=HKEY_LOCAL_MACHINE\ChiefPro;BinDir;$DEST\BIN
	  $REG-DATA=HKEY_LOCAL_MACHINE\ChiefPro;HomeDir;$DEST;reg_sz
	  $REG-DATA=HKEY_LOCAL_MACHINE\ChiefPro;RunCount;5;reg_dword
	  $REG-DATA=HKEY_LOCAL_MACHINE\ChiefPro;Bin32Data;232;reg_binary

   NOTE:
   You MUST create a key before you can assign values to anything under that key.

3. Extension of $REG-DATA - when running under NT or Win95, 

   - you can specify roots other than HKEY_CLASSES_ROOT\
   - you can also optionally specify, as the LAST parameter, a VALUE TYPE for the 
     entry string. By default, this is REG_SZ, but others can be specified for 
     Win95 or NT.

    NOTE:
     * this extension must NOT be used under Win 3.1x


4. New reserved word - "$WIN32-ONLY"
   If this is set to 1 (one) the installer will only run under
   Windows 95 or Windows NT (note - it will not run under Win32s).
   This can also be set in SETUPINF.INF.

   If a 16-bit version of Windows is running (including Win32s), 
   then an error message (as defined in the reserved word 
   "$WIN32-FAIL-MESSAGE" - below) will appear.

5. New reserved word - "$WIN32-FAIL-MESSAGE"
   This is the message that will appear if $WIN32-ONLY is enabled
   and the version of Windows is not NT or Win95.

6. You should NOT run SETUP.EXE from the TEMP directory - but if you
   do, SETUP.EXE will no longer abort (but Chief Pro files in the 
   TEMP directory will NOT be copied).

7. The main dialog will now resize itself (length-wise) if no USER OPTIONS
   are specifed.

8. Note that if you create projects under Win 3.1x, and then you move to
   Win95 or NT, you may have to recreate the projects (because the Windows
   directory and the Windows SYSTEM directory may now have different names).

9. Extension of $UNZIP - to take an optional parameter;
      /F=<filespec>

   This allows you to specify the files that will be extracted from the 
   ZIP archive. If used, this parameter MUST be the LAST one to be supplied.
   By default, the filespec is "*.*" - now you can specify something different 
   - e.g.,

     $UNZIP=$SOURCEDIR\BIN\BIN.ZIP;$DEST\BIN;CONFIRM;/F=*.EXE

     $DISK1=$UNZIP=$SOURCEDIR\BIN\BIN.ZIP;$DEST\DLL;CONFIRM;/F=*.DLL

10. New support for splitting large files into smaller chunks. This
    feature is implemented by;
	[a] SPLIT.EXE - a DOS command line program which will split the
	    file into smaller chunks (each part up to a specified maximum size)
	    and then create a log file (with the extension .~#0)
	[b] a new reserved word - $BUILD-FILE - which takes the log file
	    created by SPLIT.EXE, and the output directory, as parameters

11. New reserved word: $BUILD-FILE - to rebuild a file that has been split
    with SPLIT.EXE

    syntax=
     $BUILD-FILE=<log file name>;<target directory>;[CLEANUP]

    if CLEANUP is used, then the file chunks and the log file will be 
    deleted after the file has been rebuilt.

   NOTE: you need to add the size of the full file to your $SPACE values.

12. New reserved word: "$REGISTER-UNINSTALL" - to register your program
    among those that can be "automatically uninstalled" under Win95.
    You should supply the full path to UNINSTAL.EXE as the parameter -
    e.g.,
         $REGISTER-UNINSTALL=$DEST\BIN\UNINSTAL.EXE

    An entry will be made into the registry under Win95 and NT only. It
    has no effect under current versions of NT, and no entry will be made
    into a Win 3.1x registry.

13. New batch command: "WRITEREG" - to write an entry into the registry.
    It uses the same syntax as the new $REG-DATA.

14. New batch command: "HOURGLASS" - to show the hourglass (disappears
    when the mouse is moved).

15. New batch command: "NOHOURGLASS" - to show the normal cursor;

16. New batch command: "EXECWAIT-WINDOW" - to run a program and
    wait until a window (specified by its title) no longer exists.
    This is the best way of running and waiting for Win32 programs,
    and for running and waiting for the termination of programs which
    themselves call other programs (such as WRITE.EXE under Win95), 
    and for things like running the DBE Install program.

    The syntax is;
	EXECWAIT-WINDOW <program [parameters]>;<window title>;<timeout>

    - "timeout" is the period (in seconds) for which Chief Pro will wait
     for the window title to show up, before timing out
  
    - you can use one asterisk - at the beginning, or at the end - of the
      window title, to indicate wildcards

     example:
	EXECWAIT-WINDOW WRITE.EXE;*Wordpad;20

17. New batch command: "CHGSTR" - to change the value of a string
    globally in the batch file. This is useful for use with commands 
    which obtain user input ("IF CHOICE" and "IF INPUT"), since you can
    then perform a global "search and replace" in the batch file, with
    the input obtained from the user.

     The syntax is;
	CHGSTR <old value>=<new value> 
    
      e.g.,
       IF INPUT "Please enter your name:" CHGSTR Cust_Name=INPUT 

18. New feature in AutoCalc - you can now specify a default directory
    for all your projects. To do this, you need to make an entry in
    AUTOCALC.INI;

	DEFAULT-PROJECT-DIR=<directory path>

    This will cause AutoCalc to always change to the specified directory
    every time the Project Manager is started.

19. New feature in AutoCalc - you can now supply the name of a project (.CPJ)
    file from the command line. To do this, run;

	AUTOCALC /CPJ=<project file>

	e.g, AUTOCALC /CPJ=C:\PROJECTS\BIN\PROJECT1

    This will cause AutoCalc to try and open the specified project when
    it starts. Note that this feature is very new - it seems to work well so
    far, but I won't bet my life on it.

20. New reserved word: "$LONG-FILENAMES=DISABLED"
    - this is to disable long filenames support.
    - if used, it must be put used in BOTH;
		WINSTALL.INF, 
		and
		AUTOCALC.INI
   


Version 2.20 (October 1995)
---------------------------
1. New feature - each user option can now be assigned to specific
   disk(s) in the installation set. This is done by the extension to 
   $USER-OPTION (below). This means that if that option is deselected
   by the user, the user will not be prompted for the disk(s) containing
   the option's files. Do NOT use this feature if you have only 1
   install disk.

2. Extension of $USER-OPTION to take an addition (optional) parameter 
   - the disk(s) (if any) to which the user option is assigned to. If 
   this parameter is used, you MUST make sure that the specified disk(s)
   contain ONLY the files belonging to that user option, otherwise there 
   WILL be confusion and the installation will fail.

   e.g.,
	$USER-OPTION3=Filters;353222;$DISK5


   If more than one disk is specified, the disks must be separated from
   each other by a space. Up to 10 disks can be specified for each user
   option.

   e.g.,
	$USER-OPTION4=Filters;353222;$DISK6 $DISK7 $DISK9


Version 2.10 (September 1995)
----------------------------
1. New reserved word: $FORCE-OVERWRITE-ALL-EXISTING-FILES
   This forces all existing installation files to be overwritten without
   any input from the user. This was introduced by request. Please use
   with great caution, because all existing files (in your respect of your
   application only) will be overwritten without warning (the reason why
   I made this command so cumbersome to type).

2. Extension of $ICO and $ICON;
   with $ICO, if the second parameter is 2, or "REPLACE", then an existing 
   icon will be deleted and replaced with the new one

   with $ICON, if the LAST parameter is 2, or "REPLACE" then an existing 
   icon will be deleted and replaced with the new one

   Examples:
      $ICO=$GROUP;REPLACE;INST.EXE;Chief Pro;WINSTALC.DLL
      $ICON=WINSTALL.TXT;Sample Readme File;Chief's Sample Files;REPLACE

3. New reserved word: $DELETE-ICON - this can be used to delete an
   existing icon. You can have an unlimited number of $DELETE-ICON lines
   but each line can only contain a single icon to be deleted. If the
   specified icon does not exist in the specified group, nothing happens.
   The search for the specified icon title is not case-sensitive.

   The syntax is:  $DELETE-ICON=<groupname>;<icon title>

   Examples:
      $DELETE-ICON=$GROUP;Chief's Installer Pro
      $DELETE-ICON=$GROUP;Program Documentation

4. New version of AutoCalc, which introduces a new entry "USE-$ICON"
   into AUTOCALC.INI. This is to give users the option of specifying
   that AutoCalc should use the $ICON reserved word when creating
   template INF files (instead of $ICO, which is more difficult to
   customise).

5. Bug in $UNZIP command fixed.

6. Some internal enhancements.


Version 2.00 (September 1995)
----------------------------

1. Extension of "$SOURCEDIR" - can be used to change the source 
   directory from the default (useful for internal customisations)
      e.g.,
	$SOURCEDIR=D:\BIN\LOCAL\APP2

  * can also be used in $ICON lines, and all other lines
   e.g.,
     $ICON=$SOURCEDIR\SETUP.EXE;Re-Install MyProg v1.20

2. The directory pointed to by $TARGET will now be created recursively
   (in such cases the root of that directory will not be removed by the
   uninstaller).

3. New reserved word : $AUTOEXEC.BAT (to make entries into
   AUTOEXEC.BAT)
    Will look first in C:\ then in the
    PATH. Entries not deleted by the uninstaller.
   e.g. $autoexec.bat=SET TROOK=$DEST\TROOK

4. Limited support for UNC names (on supporting networks).

5. Extension of $DEST to provide for installing files to other 
   drives and directories - use $DEST!!=<dir name>=<files>
    e.g., $DEST!!=D:\New=*.ini;*.txt;*.tkt
   
   * other reserved words - e.g., $windir, $sysdir, etc., can be
   used here.
 
6. Limits removed from the maximum number of lines allowed for
   most reserved words;

	Limits removed
	--------------
	$INI            = no limit on number of lines
	$FONT           = no limit on number of lines
	$REG-DATA       = no limit on number of lines
	$BATCH-FILE     = no limit on number of lines
	$CLEANUP        = no limit on number of lines
	$AUTO-REPLACE   = no limit on number of lines
	$AUTOEXEC.BAT   = no limit on number of lines
	$DEST           = no limit on number of lines
	$OPTIONAL       = no limit on number of lines
	$WINDIR         = no limit on number of lines (or files)
	$SYSDIR         = no limit on number of lines (or files)
	Number of lines in batch files = no limit
	Number of files on each $DISK# = no limit
 
	Exceptions
	----------      
	$ICON                   = max 128 lines
	(but check $ICO   = no limit)
	Number of install disks = max 64 disks


7. Extension of $REG-DATA to cope with new classes roots (in preparation
   for the Win32 version). If an "HKEY_xxx\" root parameter is passed,
   then the whole entry will be passed on without having HKEY_CLASSES_ROOT
   prepended to it. Note that the key MUST end with a back-slash;

     e.g., $reg-data=HKEY_USERS\ChiefPro=Chief's Installer Pro

  (NOTE: ** This is a 16-bit program, so please do NOT use any root key other
  than HKEY_CLASSES_ROOT under Win95 or Windows NT).

8. New reserved word: $UNZIP 
   e.g., $UNZIP=<zipfile>;<dest directory>;<CODE>
  
   "Code" specifies how to deal with files which already exist. Possible 
   values are;
	OVERWRITE-ALL        (overwrite all existing files without warning)
	OVERWRITE-OLDER      (overwrite only older files [by date-stamp])
	SKIP                 (skip existing files)
	CONFIRM              (ask for confirmation before overwriting existing files)

   e.g., $UNZIP=$sourcedir\bin.zip;$dest\bin;SKIP

9. New reserved word: $DATA-SPACE (for any non-optional data that your
   app might need to create at installation - not part of percent 
   meter - but will be added to the free space checks) 

10. Extension of $TARGET: $WINDIR and $SYSDIR can now be used in
    the $TARGET line
       e.g.,
	$TARGET=$WINDIR\MYAPP

11. Bottom left corner of progress dialog now shows the
    number of the disk being processed

12. Installation can now be aborted between disk changes, by
    clicking on the "Abort" button on the dialog that prompts
    for the next disk.

13. New support for displaying messages (up to 10) during
    the course of the installation. All the messages must be
    in an ascii file called WINSTALL.MSG. Each message section
    must begin with a [#<number>] (e.g., [#1]), and cannot be more 
    than 8 lines long (max: 45 characters per line). The messages are
    displayed in turn, automatically (at the rate of 100 divided
    by the number of messages - as per the percent meter).
 
 14. INSTALL.EXE is now so big that SETUP.EXE would now
    be desirable in all cases. You can compress INSTALL.EXE
    to prevent people from running it instead of SETUP.EXE
    (e.g., compress -r install.exe). 

15. New reserved word: $OPTIONHELP# (e.g, $optionhelp1=xxxx)
    This is to present a brief explanation of the user-options
    to the user. Each user-option will have a small button next
    to it, if there is an OPTIONHELP for that option. Clicking
    on that button will display a message box with your brief
    explanation.

    Each user option may have up to 10 $OPTIONHELP# lines - but an
    absolute maximum limit of 1024 bytes applies to each user option.
    Realistically, this maximum should be 512 bytes, because of limits
    in the MessageBox() API when using CTL3D.

16. Extension of $INI to allow the assignment of $INI entries to 
    user options. This is done by specifying the relevant user
    option (i.e, $USER-OPTIONx) as the 5th entry on the $INI line 
    (or as the 6th entry, if the 5th entry is used for NO-REPLACE). 
    If the specified user option is de-selected by the user at runtime, 
    then the INI entry will not be made.

17. New (limited) support for installing files from subdirectories 
    of the source directory (e.g., on a cd-rom or a network drive). The
    scheme is to use each such subdirectory as a pseudo floppy disk
    - i.e., the files in the subdirectory will be specified on a
    $disk# line, and then the subdirectory itself will be called
    $disk# (e.g., $disk2 = for the files which will be on
    the $disk2 lines). If you specify $verify-install-disks then
    you should also have a file called $disk#.dsk in the subdirectory.

18. The installer will now automatically look for directories
    names $disk# under the source directory, to install $disk#
    files from. This includes $disk1 as well. This simplifies
    installing from network disks/cd-roms.

19. New reserved word: $MAX-DUPLICATES
    This allows the installation of the same file into more than
    one destination directory. The command takes one parameter - the
    maximum number of times a single file can be duplicated in this
    way. By default, this value is set at 1. You can increase it
    to any number up to 30. Note that increasing this number will mean
    the installer looping through each $DEST\xx directory the specified
    number of times, for EACH file being installed. This is guaranteed
    to slow down the installation considerably, if the specified number
    is too high. Using it can also lead to multiple copies of files
    which you do not really want to be duplicated - this is especially
    so if you use wilcards at all, in your $DEST\xx lines.

20. Extension of $ICON. If the last parameter on the $ICON line
    is "ALLOW-DUPLICATES" (or "1") then existing icons will be 
    duplicated if the program is installed again.
    e.g. 
        $icon=$dest\test.hlp;Help file;allow-duplicates
        $icon=$dest\test.hlp;Help file;1

21. When disk verification is turned ON, this now also affects
    the first disk ($disk1) - so you must have a $DISK1.DSK file
    on your first disk (even if there is only one disk in the
    installation set). This is to remedy the anomaly where disks
    from disk 2 are verified, but the first (and usually the most
    important) disk is not verified.

22. Extension of $VERIFY-INSTALL-DISKS - to provide extra (optional)
    checking of the .DSK file. To enable this, supply 'READ-FILES' as
    a parameter -
	 e.g.,
	$VERIFY-INSTALL-DISKS;READ-FILES

   If this feature is turned on, then the installer will treat the .DSK
   file for every disk as a Windows .INI file, and check in the [disk-id]
   section for the keyname 'disk-id'. The entry here must match the name
   of the .DSK file being examined - e.g., a .DSK file called $disk1.dsk
   must have the following entries;
     [disk-id]
     disk-id=$disk1.dsk

  Note that if the entry does not match, the installer will assume that the
  disk is the wrong one and will keep prompting for the disk. Thus, you
  should use this feature with care.
 
23. Changes in AutoCalc
	[a] directories for $DISK# files must now be called
	    $DISK# and not just DISK# (under the source directory
	    tree). Files for $DISK1 can also now be in a sub-directory
	    of the source directory - must be called $DISK1)

	[b] by the same token, directories holding files for
	    $SYSDIR, $WINDIR, and $TEMPDIR must also have the "$"
	    sign in their names.

   These changes are introduced for consistency and to make things
   easier, especially now that the installer will first of all look
   for $DISK# files in similarly named sub-directories of the source
   directory.
 
24. New reserved word: $DISKDIR
    A directory path can now be optionally specified for the files 
    on each disk (one path only for each $disk). This is specified by
    using the new $DISKDIR command.

    The Syntax is $DISKDIR#=<dir name> ;[CODE]

    "#" stands for the number of the disk;

    "CODE" is optional; it specifies whether (for disk 2 to the end)
    the installer should prompt the user to insert a disk. It defaults
    to not prompting (to simplify installing from cd-rom or network
    drives). If you want the user to be prompted for a particular disk,
    put "ASK", or "PROMPT", or just "1" as the code.

    "CODE" is not valid for disk 1

     e.g. 
      $diskdir1=D:\USR\BIN
      $diskdir2=D:\LIB\SRC;ASK
      $diskdir3=$SOURCEDIR\LIB\SRC;ASK
      $diskdir4=$SOURCEDIR\BIN\LIB

    * if the specified directory is NOT found, the installer will prompt
    the user for a disk.

    * the installer will still automatically look for $disk# directories
    under the specified directory
   
    * this feature is optional, and is not needed at all
    it should be used sparingly, since it has not been tested in all
    possible scenarios. It is NOT advised to use this feature when
    installing from FLOPPY disks (i.e., it is added mainly for the
    convenience of those who wish to install from cd-rom, or hard disk).

25. New reserved word: $FORCE-RESTART-WINDOWS

    Note that this feature uses the EXITWINDOWSEXEC() API call. Thus
    it will fail if any program refuses to terminate (e.g., if the user
    has a DOS session open).

26. New reserved word: $FORCE-EXIT-WINDOWS

    Note that this feature uses the EXITWINDOWS() API call. Thus
    it will fail if any program refuses to terminate (e.g., if the user
    has a DOS session open).

27. New reserved words: $OK-BUTTON-TITLE  and $CANCEL-BUTTON-TITLE 
    This can be used to change the caption of the "OK" and "Cancel" 
    buttons on the edit dialog box (note that these will sometimes be
    overridden by the new string resources #542 and/or #543).

28. New GUI front end (or IDE) and Project Manager (run AUTOCALC.EXE). 

29. New (DOS command line) compiler for INF and BATCH
    files (COMPILE.EXE)

    The syntax is;
	  COMPILE <source-file> <target-file> [/BATCH]
    e.g.  COMPILE test.inf winstall.inf  
    e.g.  COMPILE batch1.txt program.cmd /BATCH 


30. INI entries with empty settings can now be created with
    $INI = by supply an empty string (i.e., " ") as the 4th
    parameter;

    e.g.,
    $INI=$dest\prog.ini;386enh;printer.drv;" "

31. Extension of $GROUP. This reserved word can now take an
    extra (optional) parameter ("SHOW-COMBO"), after the group 
    name. If SHOW-COMBO is used, then a combo box displaying the
    names of the available Program Manager groups will be made
    available to the user at run time. The user can then choose
    any of the listed groups to use as the main group.

    e.g.,
	$GROUP=Chief Pro;SHOW-COMBO

32. Extension of $BANNER-MESSAGE - to take some optional parameters;
	CENTERED  = the banner will be centered
	VERTICAL  = the text will be displayed vertically
		  * must supply the X co-ordinates for the vertical text
   e.g.,
	$BANNER-MESSAGE=Chief Pro v2.0;CENTERED
   or
	$BANNER-MESSAGE=Chief Pro;VERTICAL;5

33. A new progress dialog and "percent" meter
  
34. New reserved word $LAN-SYSDIR. This was introduced by request. 

35. New reserved words $BIG-METER-COLOR and $SMALL-METER-COLOR
    to change the colors of the percent meters. They use the same
    syntax as $TEXT-BACKGROUND.
  
36. New buttons ("Abort" and "Help") which remain on the desktop
    for the duration of the install. The buttons will be shown by
    default, unless the (new) reserved words $NO-ABORT-BUTTON or
    $NO-HELP-BUTTON are used.

37. New reserved words: $NO-ABORT-BUTTON and $NO-HELP-BUTTON - to turn
    off the desktop "Abort" or "Help" button respectively.   

38. New reserved word: $ABORT-MESSAGE - this is the message that will
    appear to the user when the user does something to terminate the
    installation (e.g., clicking on the desktop "Abort" button, after
    the installation has commenced).

39. New feature in the AutoCalc IDE - an option to convert Visual
    BASIC Setup Wizard (.VBZ) files to a Chief's Installer Pro project.

40. In respect of strings in WINSTALL.INF, "\n" was always treated
    as the code for a new line (carriage return). If a literal "\n"
    is desired, an exclamation mark should precede the "n" (i.e., "\!n").
    Furthermore, the "\n" is now case sensitive - so, for example,
    "\N" will not be converted.

41. Extension of $DISK to take $UNZIP as a parameter. This is to
    unzip files from a particular disk, instead of copying files
    from it. In this case, the files will only go to the destination
    provided in the $UNZIP command.
     e.g. 
      $DISK1=$UNZIP;$SOURCEDIR\BIN.ZIP;$DEST\BIN
 
42. New reserved word: $ICO - this is for creation of Program
    Manager icons, but this reserved word allows more lower level
    access than $ICON, and also does not have any limit on the
    number of lines.

    This command takes up to 11 parameters, each separated with
    a semi-colon, or a comma;

	1 = the group name (or $GROUP for the default)
	2 = allow duplicate icons? (0 for FALSE; 1 for TRUE)
	3 = command line
	4 = icon's title
	5 = file to load the icon from  (optional)
	6 = icon index in the icon file (optional)
	7 = x position of the icon in group (optional)
	8 = y position of the icon in group (optional)
	9 = working directory (optional)
	10= hotkey (optional)
	11= minimize (0 for FALSE; 1 for TRUE) (optional)

	"Hotkey" consists of a number, made up of a code plus the ascii
	code of the letter;
	Codes:
	Alt   = 1024
	Ctrl  =  512 
	Shift =  256
	So, if you want Alt+S then: 1024+83 (i.e., 1107) is the number. 

    example:
    REM    1    2      3            4        5         6 7 8   9   10  11
    $ICO=$GROUP;0;$DEST\PRG.HLP;Prg Help;$DEST\PRG.ICO;0; ; ;$DEST;1107;1

    Note that icon placement in existing groups is sometimes misaligned when
    using the $ICO command.

43. The order of appearance of the user options has been changed on the
    main dialog window.

44. New group boxes (with internal numeric IDs of 1 to 9) have been created 
    around different controls in the main dialog window.

45. New reserved word:  $CLOSE-GROUP-BOX ; this allows you to close any
    or all of the group boxes referred to above, by supplying their numeric
    IDs as parameters (separated by semi-colons); 
     e.g., $CLOSE-GROUP-B0X=1;5;6

46. New reserved word:  $ABORT-UNINSTAL-QUESTION ; the question to ask
    when running the uninstaller, and the user clicks on the 'Close'
    option in the system menu.

47. Support for batch commands with a new reserved word:
    $BATCH-FILE. In WINSTALL.INF, you can have an unlimited number
    of $BATCH-FILE lines, each specifying one file; but in SETUPINF.INF,
    you can only have one $BATCH-FILE line.

    Each batch file can contain an unlimited number of lines - but
    note that the bigger a batch file is, the longer it will take
    to read it. Each line in a batch file can be up to 200 characters.

Notes:
  1. Whatever is done by these batch commands will normally NOT be 
  undone by the uninstaller.

  2. Batch files are executed in the order in which they appear,
  and are processed immediately after the files have been
  installed (after $ini, $fonts, $reg-data, and $autoexec.bat,
  but before $pre-exec, and $exec)

  3. Certain reserved words are invalid when used in a batch
  file that is run from SETUPINF.INF - e.g.,
    $DEST
    $TARGET

48. Several bugs fixed.

49. END OF THE INTRODUCTORY PRICING PERIOD.


