@DATABASE "Spatcher.guide"
@NODE "MAIN" "Title"
@NEXT "Install"
@TOC "MAIN"

                          Spatcher v1.0 (11.9.1996)

                          Before you start to read:

1) Excuse my silly english, please. I wasn't born in english speaking country
                         and I'm still learning it.

  2) I take NO RESPONSIBILITY for any damage caused by this software. It is
            distributed "as it is", with NO WARRANTY of any kind.


                                 @{"Instalation" LINK "Install"}
                              @{"What is Spatcher" LINK "About"}
                                    @{"Usage" LINK "Usage"}
                                 @{"Distribution" LINK "Dist"}
                                    @{"Future" LINK "Future"}
                                    @{"Author" LINK "Author"}
@ENDNODE

@NODE "Future" "Future improvements"
@NEXT "Author"
@PREV "Dist"
@TOC "MAIN"

                             Future enhancements

 If I notice enough interest from users, I will improve Spatcher and release
a new version.

 In Spatcher 2.0 I would like to use keyboard shortcuts, ReqTools requesters,
Appwindow, and I may use some of your hints (please send @{"me" LINK "Author"} your ideas).


@ENDNODE

@NODE "Install" "Instalation"
@NEXT "About"
@PREV "MAIN"
@TOC "MAIN"

                                 Instalation

 There is no special instalation necessary. Just copy the Spatcher drawer
where you want Spatcher to be and copy Spatch into the C: directory.


 Here is an example of instalation (CLI commands):

<directory_where_spatcher_drawer_is>
copy spatcher <directory_where_you_want_spatcher> all
spatcher
copy spatch c:

 (Imagine, that Spatcher drawer is on the disk in internal disk drive and
you want to have it installed on harddisk in directory HD0:Utilities):

DF0:
copy Spatcher HD0:Utilities all
spatcher
copy spatch c:

@ENDNODE

@NODE "Author" "Author"
@NEXT "DragDrop"
@PREV "Future"
@TOC "MAIN"

                             This is my adress:


                                Pavel Uhliar
                                   Ceska 9
                                  Fr. Lazne
                                    35101
                               Czech Republic

@ENDNODE

@NODE "Dist" "Distribution"
@NEXT "Future"
@PREV "Example"
@TOC "MAIN"

                                Distribution

 This software (Spatcher) is FREEWARE, but it is not PUBLIC DOMAIN. It can be
freely redistributed, but if you want to use it more than 10 days, you should
pay @{"me" LINK "Author"} the registration fee: $5, 5DM or 20Kc (please send paper money, if
possible). The software and it's documentation can't be modified in any way!
 It can be uploaded to Aminet collections, BBSs, Fish disks (;-), etc.

 List of files in archive (unarchived lenght):
    Spatcher.info                      756
    Spatcher/Spatch                  14636
    Spatcher/Spatcher                15396
    Spatcher/Spatcher.info             602
    Spatcher/Spatcher.guide           8082
    Spatcher/Spatcher.guide.info      1852
    Spatcher/Example.info              756
    Spatcher/Example/Hello            5372
    Spatcher/Example/Hello2           5376
    Spatcher/Example/Hello.pch        1112

 Spatch - Copyright © 1992 SAS Institute, Inc. - (a part of this archive) is
a part of SAS/C distribution package, but it can be FREELY DISTRIBUTED.

@ENDNODE

@NODE "Usage" "Usage"
@NEXT "Example"
@PREV "About"
@TOC "MAIN"

                             How to use Spatcher

 Usage of this software is very easy. There are three "string gadgets", that
allow you to set path and name of input and output files.

 The first one is used to set the name of the original file (an old version
file).

 The second one contains the name of output file, that will be created (a new
version file).

 The last (the third) "string gadget" allows you to set the name of the patch
file (#?.pch - list of changes).

 Next to all three "string gadgets" you can see a ? "button". When clicked,
it pops up an ASL file requester for easier filename input.

 When you set the name of the original file (both ways - file requester and
keyboard), the other ones are filled with the default values (<origfile>.new,
<origfile>.pch).

 If you set up all filenames, you can click the Patch "button" to start the
patch action. If an error message appears, you specified a filename, that
doesn't exists. The action is terminated and you can correct your mistake.

 You can quit the program using two ways: 1) Clicking the "close gadget" in
                                             the top-left corner of the main
                                             window.
                                          2) Clicking the Quit "button" in
                                             the bottom near to the right
                                             side of the main window.

 If you click the About "button", you will get some information about
Spatcher and it's author (me).

 The Iconify "button" zips the Spatcher window into a small appicon in the
Workbench window. You can reopen the window by double-clicking this icon. You
can "@{"drag&drop" LINK "DragDrop"}" a file onto the icon too. It has the same effect as selecting
a filename by Input File ASL file requester.

                            @{"Example of patching" LINK "Example"}
@ENDNODE

@NODE "DragDrop" "Drag&Drop"
@PREV "Author"
@NEXT "MAIN"
@TOC "MAIN"

                      Using Drag & Drop with Spatcher:

1) Find (in a Workbench window) file, that you want to patch.
2) Move the mouse pointer to the icon of that file.
3) Press the left mouse button and hold it down.
4) Move the mouse pointer to the Spatcher appicon (the icon of file to patch 
   will be moving too.
5) Release the mouse button.

 Now, the Spatcher window reappears and "string gadgets" are filled with
filenames.

@ENDNODE

@NODE "Example" "Example"
@NEXT "Dist"
@PREV "Usage"
@TOC "MAIN"

                      An example of usage of Spatcher:

 You will update an old version of a executable file "Example/Hello" that
prints "Hello, world" to a newer one called "Example/Hello.new". The patch
file "Example/Hello.pch" contains the differences between two files
"Example/Hello" and "Example/Hello2". When you finish the operation, you can
try, if the "Example/Hello.new" has the same output as "Example/Hello2".

1) Run the "Example/Hello" file. It prints "Hello World".
2) Run the "Example/Hello2" file. It prints "Hello Universe".
3) Run the "Spatcher" program.
4) Select the "Input File" "string gadget", type in "Example/Hello" filename
   and press Return or click the top "?" "button" and select it by a file
   requester. Spatcher will add the text "Example/Hello.new" into the "Output
   File" "string gadget" and "Example/Hello.pch" into the "Patch File" one.
5) Click the "Patch" "button". The Spatch programm will be executed and a new
   file "Example/Hello.new" created.
6) Quit the "Spatcher" program.
7) Run the "Example/Hello.new" file. If there were no errors, it outputs
   "Hello Universe".

@ENDNODE

@NODE "About" "Introduction"
@NEXT "Usage"
@PREV "Install"
@TOC "MAIN"

                              What is Spatcher?

 Spatcher is a easy to use GUI (Graphical User Interface) for Spatch
(Copyright © 1992 SAS Institute, Inc.), that is part of the SAS/C
distribution.

 Spatch is a tool, that allows you to update an old version of any software
to a better one. All you need is a Spatch executable program (included in
this archive) and a patch file (#?.pch) created by the developper of the
updated software.

 The patch file is a list of differences between two binary files. Spatch
combines the original files and the patch file into a new file.

 Control of Spatch is not very difficult, but most Amiga users prefer GUI.
Spatcher is developped for Spatch 6.50, but it should work with any version,
that uses the same parameter syntax.

           (Spatch [-o<output_file>] [-p<patch_file>] <old_file>)

 Spatch is a part of SAS/C package, but it is freely redistributable!

@ENDNODE

