@DATABASE ReqAttackUpd.guide
@AUTHOR Jaca/Dreamolers-CAPS
@$VER: ReqAttackUpd 7.0 (13.11.2000)

@node MAIN "ReqAttackUpd Guide by Jaca/D-CAPS, 13.11.2000"
@{jcenter}»» @{b}ReqAttack Update Release 7@{ub} ««
»» MAILWARE ««
»» ©1999-2000 by Jaca/Dreamolers - Clever Amigants Polish Society ««
@{jleft}
 @{"  ReqAttack 1.4  " link ra} @{b}NEW@{ub}
 @{" RAPrefsMUI 1.65 " link rpm} @{b}NEW@{ub}
 @{"    ReqOFF 1.2   " link r0}

 @{"  and others...  " link oth}


 @{" Release Authors " link 3} @{b}NEW@{ub}
 @{"     Thanks      " link 10}
 @{"   Legal stuff   " link 2}


@{jcenter}

NEW HOMEPAGE:
republika.pl/jacadcaps

@{b}I'm looking for developers which could help me to write AHI based 
ReqAttack Sound player!@{ub}
@endnode

@node ra "ReqAttack 1.4"

  @{b}PROGRAM:@{ub} ReqAttack 
  @{b}AUTHOR:@{ub}  Georg Steger & Jaca/Dreamolers-CAPS
  @{b}STATUS:@{ub}  Freeware

  @{b}1.0 About@{ub}

  This is the 1st version compiled and changed by Jaca/Dreamolers-CAPS. The
full source of ReqAttack 1.3 will be available soon on republika.pl/jacadcaps.

  NEW: roundbuttons configitem which makes button edges rounded. Possibility
to start RAPrefsMUI with Appear in Exchange. (RAPrefsMUI must be in sys:prefs).

  @{b}2.0 Future@{ub}

  The 1st thing to do is to make ReqOFF an internal part of ReqAttack (it'll
make it faster and smaller), add some new configitems like possibility to change
requester's fonts...

  I'm thinking about some optional 68k+PPC compilations to speedup image
loading (remapping, c2p). I'll try to make them work both with PowerUP and WOS.

  NOTE: check D-CAPS software homepage for info!
        @{b}http://republika.pl/jacadcaps@{ub}
@endnode

@node rpm "RAPrefsMUI 1.65"

  @{b}PROGRAM:@{ub} RAPrefsMUI
  @{b}AUTHOR:@{ub}  Jacek Piszczek (Jaca/Dreamolers-CAPS)
  @{b}STATUS:@{ub}  Card/Mailware

  @{b}1.0 Introduction@{ub}

  Somewhere in Sep 1999 Cyran/D-CAPS copied his new downloads from Aminet to my
harddisk... I found reqattack.lha and after some decrunching I started
ReqAttack. It was really amazing (nice difference between this and old ARQ), but
the configuration method - script language - simply took to much time to get
what I wanted. Well, after few more minutes I decided to write a prefs program,
which would be more friendly to the user. RAPrefsMUI is a script file generator
for ReqAttack 1.2 or greater. This program is a result of hours of hard work and
I hope you'll appreciate it by registering.

  The 1st version of this program, ReqAttackPrefs, which can be found on Aminet
(util/wb) had an awful GUI (IMHO) and it's internal structures made future
developing almost impossible. I've decided to write a completly new program.
Please read 1.1 Features chapter to see what I have managed to change...

  @{b}1.1 Features@{ub}

  * Covers most of ReqAttack's check items

  * Covers all ReqAttack's 1.2 configuration items, including sound!

  * Communicates with ReqAttack via ReqAttack Warp Core port

  * Communicates with ReqOFF via ReqOFF Warp Core port

  * Dynamic memory allocation using memory pools

  * Nice and easy to use GUI written in Magic User Interface

  * Reads and saves reqattack.prefs files (no more *rap files!)

  * Bubble help for most gadgets

  * Own RGB Display Class in color sections, which remaps colors to
    nearest color in palette if there's no free screen pens

  * Faster, better and easier to use than old version!

  * reqattack.prefs files are now much smaller
    (in my case it's 12kb compared to 3kb!)

  @{b}2.0 Requirements@{ub}

  * AmigaOS v39+ (3.0)

  * MUI 3.6+ @{b}©1992-97 by Stefan Stuntz@{ub}

  * ReqAttack 1.4+ (needs to be running while using RAPrefs!)


  @{b}2.1 Installation@{ub}

  Just copy the RAPrefsMUI file (with icon) whereever you want. I suggest
'Sys:Prefs/'.

  NEW: ReqAttack is able to start RAPrefsMUI if it's in sys:prefs/ drawer!

  @{b}2.2 How does it work?@{ub}

  Few things have changed from ReqAttackPrefs 1.17 to RAPrefsMUI... Now we've
got a little bit different structure types:
  * DEFAULT or SCREEN
  * SUBREQUESTER or SUBPROGRAM

  Let me explain this to you: DEFAULT is the main look of requesters, no matter
what title it has or on which screen it's displayed. SCREEN defines the main
look for all requesters opened on a selected screen. Both DEFAULT and SCREEN can
have some "children", I mean the SUBREQUESTER or SUBPROGRAM. SUBREQUESER defines
the look of a requester specified by it's title, etc. If it's a child of DEFAULT
it'll be always displayed with it's settings. If it's a child of SCREEN it'll be
displayed with it's settings only when displayed on a "parent" screen. Same goes
to SUBPROGRAM. NOTE: if you don't own a GFX board you're of course forced to use
screens with different number of planes and sometimes strange palletes - in this
case it's better not to define global look for some requesters ("children" of
DEFAULT), but to define the look for them as "children" of mostly used screens
As you know children always inherit parent attributes. Same goes to RAPrefsMUI.
If you edit the DEFAULT or SCREEN settings after "Use" all settings of their
children will be updated to "parent" settings, according to "Inherit settings"
from menu.

  @{b}3.0 Usage@{ub}

  This should be very simple thanks to MUI's bubble help, but please read
some explanation of adding/removing entries and their configuration...

  @{"Main window" link u2}
  @{"Edit window" link u3}

  It's very IMPORTANT!

  @{b}4.0 Bugs/Limitations/Future@{ub}

   * ReqAttack 1.0 and 1.1  won't read the prefs files generated by this
     program - few options used in 'reqattack.prefs' are supported from
     version 1.2+

      Please let me know if you find any bugs in RAPrefsMUI!
      I'll try to fix them in future versions.

   * Future versions will be developed according to changes in ReqOFF and
     ReqAttack.

  @{b}4.1 Release history, changes@{ub}

    1.16    07.12.99  !RELEASED ON ACS CD 01/2000!      (Feb 2000)

    1.17    18.12.99  !AVAILABLE ON AMINET!             (Jan 2000)
                                             (util/wb/RAPrefs.lha)
                      !AVAILABLE ON MrDark's HOMEPAGE!  (Jan 2000)
                                                 (amiga.is.o.k.pl)
                      !AVAILABLE ON MY HOMEPAGE!        (Mar 2000)
                                               (beton.art.pl/jaca)
                      !RELEASED ON ACS CD 03/2000!      (May 2000)

    1.28a   22.03.00  !INFO ABOUT DEVELOPER WORK!       (Mar 2000)
                                               (beton.art.pl/jaca)
    1.60    21.05.00  !AVAILABLE ON AMINET!             (May 2000)
                                      (util/misc/reqattackupd.lha)
                      !AVAILABLE ON MY HOMEPAGE!        (May 2000)
                                               (beton.art.pl/jaca)
                      * gui written in Magic User Interface      *
                      * loads/saves reqattack.prefs files        *
                      * smarter way of editing                   *
                      * optimized prefs generation               *
                      * inherit functions                        *

    1.61    27.05.00  !AVAILABLE ON AMINET!             (May 2000)
                                      (util/misc/ReqAttackUpd.lha)
                      !AVAILABLE ON MrDark's HOMEPAGE!  (May 2000)
                                                 (amiga.is.o.k.pl)
                      * bugfixed                                 *
                      * prepared to work with ReqOFF             *

    1.62    22.06.00  !AVAILABLE ON AMINET!            (June 2000)
                      !AVAILABLE ON MrDark's HOMEPAGE! (June 2000)
                                                 (amiga.is.o.k.pl)
                      * added ReqOFF exec feature support        *

    1.63    16.07.00  !AVAILABLE ON AMINET!            (July 2000)
                      !AVAILABLE ON MrDark's HOMEPAGE! (June 2000)
                                                 (amiga.is.o.k.pl)
                      * added Preview function in Edit window    *

    1.64    21.07.00  !AVAILABLE ON AMINET!            (July 2000)
                      !AVAILABLE ON MY HOMEPAGE!       (July 2000)
                                               (beton.art.pl/jaca)
                      !AVAILABLE ON MrDark's HOMEPAGE! (June 2000)
                                                 (amiga.is.o.k.pl)
                      !ARTICLE IN ACS 5/2000!     (September 2000)
                      * communicates with ReqOFF Warp Core port  *
    1.65    13.11.00  !AVAILABLE ON AMINET!        (November 2000)
                      !AVAILABLE ON MY HOMEPAGE!   (November 2000)
                                          (republika.pl/jacadcaps)
                      * updated for ReqAttack 1.4                *
                      * small fixes and new logo                 *
@endnode

@node oth "Other software in this release"
@{jcenter}
ReqOFF Bonus Requester Replacers:
@{jleft}
 @{"  KernelChange " link r1}
 @{"     Reqlog    " link r2}
@{jcenter}
ReqAttack Bonus files:
@{jleft}
 @{" RASoundDaemon " link ra1}
 @{"RASoundLauncher" link ra2}
 @{"     Other     " link oth1}
 @{"     XPlay     " link oth2}
@endnode

@node oth1 "Other ReqAttack Bonus files"

  @{b}1.0 Info@{ub}

  You can find here some logos and buttons I made (some are converted icons).
Put them in your ReqAttack/Buttons and ReqAttack/Logos dirs if you like them...

  ReqAttack.prefs is an example prefs file to use with RAPrefsMUI.

  RAIM_Convert has an almost finished GUI. Try: RAIM_Convert "" "" GUI

  NOTE: Gfx-Card users should convert their ReqAttack GFX to chunky type
to gain some speed.
@endnode

@node oth2 "XPlay notes"

  @{b}1.0 Info@{ub}

  I don't know who is the author of XPlay, but I think he won't kill me for
including this proggy in this FREEWARE/MAILWARE release :)

  Mail me and I'll remove XPlay if it's necessary.
@endnode

@node ra1 "RASoundDaemon"

  @{b}PROGRAM:@{ub} RASoundDaemon
  @{b}AUTHOR:@{ub}  Georg Steger
  @{b}STATUS:@{ub}  Freeware

  @{b}1.0 About RASoundDaemon@{ub}

  From version 1.2 ReqAttack can play samples via external programs, such like
RASoundDaemon. ReqAttack sends messages to their ports (see @{"Main window" link u2} chapter).
RASoundDaemon is designed to play samples with the use of great Amiga datatype
system.

  @{b}WARNING:@{ub} RASoundDaemon hangs when the sound channels are allocated while
it tries to play a sample, so I suggest you use @{"RASoundLauncher" link ra2} instead.
(bug reported by Sven Rieke)

  @{b}2.0 Installation/Usage@{ub}

  Just put the RASoundDaemon file and it's icon to 'Sys: WBStartup' and configure
the Sound Port in RAPrefsMUI prefs as 'RASoundDaemon'.
@endnode

@node ra2 "RASoundLauncher"

  @{b}PROGRAM:@{ub} RASoundLauncher
  @{b}AUTHOR:@{ub}  Jacek Piszczek (Jaca/Dreamolers-CAPS)
  @{b}STATUS:@{ub}  Freeware

  @{b}1.0 About RASoundLauncher@{ub}
  
  From version 1.2 ReqAttack can play samples via external programs, such like
RASoundDaemon. ReqAttack sends messages to their ports (see @{"Main window" link u2} chapter).
RASoundDaemon is designed to play samples with the use of great Amiga datatype
system.

  RASoundLauncher is based on RASoundDaemon source, but it doesn't use datatypes
system to play samples. When the requester is opened it runs @{"XPlay" link oth2} which
does all the stuff related to sample playing.

  @{b}2.0 Installation/Usage@{ub}

   * Make sure you've got XPlay in your C: directory

   * Put RASoundLauncher to WBStatup or run it from startup-sequence

   * Configure the Sound Port in RAPrefsMUI as 'RASoundLauncher'

  NOTE: names of sound ports are case sensitive, so 'raSoundlauncheR' won't work!
@endnode

@node 2 "Legal stuff"
  @{b}1.0 Copyrights@{ub}

  * ReqAttack is ©1999-2000 by Georg Steger
    ReqAttack is ©2000 by Jaca/D-CAPS
  * RAPrefsMUI is ©1999-2000 by Jaca/D-CAPS
  * ReqOFF is ©2000 by Jaca/D-CAPS
  * ReqAttackPrefs is ©1999 by Jaca/D-CAPS
  * RASoundDaemon is ©1999 by Georg Steger
  * ReqOFF-Bonus programs are ©2000 by Jaca/D-CAPS
  * ReqAttack Tools are ©1999-2000 by Georg Steger
  * ReqAttack Datatypes are ©1999-2000 by Georg Steger
  * MUI is ©1992-1997 by Stefan Stuntz

  @{b}2.0 ReqAttackUpd MAILWARE notes@{ub}

  ReqAttack updates are MAILWARE. Please send registration e-mail to:
jacadcaps@poczta.onet.pl !

  Oppinions and suggestions about ReqAttackUpd are welcome.

  @{b}2.1 ReqAttack FREEWARE notes@{ub}

  Because Georg gave up ReqAttack's development all future releases of ReqAttack
will be FREEWARE and developed by Jaca/D-CAPS!

  @{b}3.0 Other release notes@{ub}

   * Authors cannot be held responsible for any damage that might occure while
     using programs included in this ReqAttackUpd release.

   * You may spread this archive, but leave it untouched!
@endnode

@node 3 "Authors of this ReqAttackUpd release"

  ReqAttackUpd is prepared by Jaca/Dreamolers-CAPS.

  @{b}AUTHOR:@{ub}   Georg Steger
  @{b}PROGRAMS:@{ub} ReqAttack, ReqAttack datatypes and tools
  @{b}ADRESS:@{ub}   Hochlercher 30, I-39030 St. Johann/Ahrntal, ITALY
  @{b}INTERNET:@{ub} georg.steger@rolmail.net

  @{b}AUTHOR:@{ub}   Jacek Piszczek (Jaca/Dreamolers-CAPS)
  @{b}PROGRAMS:@{ub} @{b}RAPrefsMUI@{ub}, @{b}ReqAttack@{ub}, ReqOFF, ReqOFF-Bonus, RASoundLauncher, Guide
  @{b}ADRESS:@{ub}   Dobra 23, 87-100 Torun, POLAND
  @{b}INTERNET:@{ub} jacadcaps@poczta.onet.pl, http://republika.pl/jacadcaps

@endnode

@node u2 "Main window"

  @{b}1.0 Main menu: Program Prefs@{ub}

   * don't change Bitmap allocation unless you really need to
   * Gfx path is very useful when defining new structures

  @{b}1.1 Main menu: Program Prefs: Sound port@{ub}

  From version 1.2 ReqAttack can play samples by some external programs.
A supplied RASoundDeamon will play your samples via datatypes. To hear samples
the external program has to be launched, and it's port name has to be supplied
here. (for eg. RASoundDaemon)

  @{b}2.0 Prefs menu: Buttons@{ub}

    Edit: opens the @{"edit menu" link u3} and let's you change selected entry's
      settings.

    Add screen: add's a new screen to the list.

    Remove: removes selected entry, if entry is a SCREEN or DEFAULT it'll remove
      all it's children (DEFAULT can't be removed).

    Add requester: add's a new requester to the list as a child of selected father
      (or child of selected child's father).

    Add program: add's a new program to the list as a child of selected father
      (or child of selected child's father).

    Preview: opens a preview requester with the settings of selected entry.

  @{b}3.0 Titlebar menu@{ub}

    Project: Load...: loads ReqAttack prefs file generated by RAPrefsMUI. This
      program is able to read only self generated prefs files because of the
      level of possibilities of prefs file layout and not flexible load engine :(

    Project: Save as...: saves ReqAttack prefs file as a normal RAPrefsMUI
      generated file (will work as a reqattack.prefs file).

    Edit: Mark: marks selected entry. This function is similar to clipboard "copy",
      but it only stores the selected entry's POSITION from list. So if you
      remove/change it's position you won't get it's prefs with Paste.

    Edit: Paste: copies prefs from previously marked position to selected position.

    Edit: Entry's age: moves selected entry (also with it's children) up (younger)
      or down (older). To understand this take a look at this @{"example" link u2e}.
@endnode

@node u2e "Entry's age example"
@smartwrap
You've defined something like this:@{line}
...@{line}SUBREQ | NUMBUTTONS>=2@{line}SUBREQ | TITLE="#?About#?"@{line}...@{line}
Most "About" requesters have only one button, but if you'r program displays
a requester with title "#?about#?" and it has 2 or more buttons, you'll get
the 1st SUBREQ requester's look. To avoid such a problems just make 2nd SUBREQ "younger"
(or the 1st one "older").@{line}@{line}
If you still don't understand take a look at STOP command in ReqAttack Guide.@{line}
@endnode

@node u3 "Edit window"

  @{b}1.0 Environment section: Specification@{ub}

  Here you should define how your screen, subrequester or subprogram should
be recognised by ReqAttack. We do this with some special keywords (look at
the popup menu on the right side of string gadget) which are essential for
every type of entry.

  @{b}1.1 Keywords and templates@{ub}

  All keywords MUST be upper case; don't try to use keywords in strings (for
example TASKNAME = "someNAME"); strings and all values with commas have to
be enclosed with "".

  Types of values:
    string - normal string (it's possible to use #? joker)
    value  - decimal value
    key    - special decimal key (used only with ASPECT)

  Types of compare operations:
    =      - only = is possible
    <>=    - possible operations are = < > <> <= >=

   * please note that when you use commas the there's only one compare operation
     possible and it's = !
   * <@{b}string@{ub},string,...> or <@{b}value@{ub},value,...> means that only
     one value is necessary, but it's also possible to add more string/values
     separated with commas
   * strings/values separated with commas will be threated like:
        IF ((KEYWORD = value) OR (KEYWORD = value2) OR ...)
   * few keywords in one specification will be threated like:
        IF ((KEYWORD CMP value) AND (KEYWORD2 CMP2 value2) AND ...)
   * don't use same keywords in one specification; only the 1st one will
     be used

  @{b}1.2 SCREEN specification@{ub}
  Template: STITLE   =  "<@{b}string@{ub},string,...>" - titlebar text
            DEPTH   <>= <@{b}value@{ub},value,...>     - number of planes
            HEIGHT  <>= <@{b}value@{ub},value,...>     - height in pixels
            WIDTH   <>= <@{b}value@{ub},value,...>     - width in pixels
            ASPECT   =  <key>                          - screen's aspect

  ASPECT key's: 1 - 1:1 screens (ex: 320x256, 640x512)
                2 - 2:1 screens (ex: 640x256)
                4 - 4:1 screens (ex: 1280x256)
               -2 - 1:2 screens (ex: 320x512)
               -4 - 1:4 screens (ex: 320x1024)

   * it's very hard to define the Workbench screen with STITLE, so I advice
     to define DEFAULT to look great on your WB
   * AGA users: it's good to define a screen specified with "DEPTH<=3" with
     backgrounds, logos and button images disabled

  @{b}1.3 SUBREQ specification@{ub}
  Template: TITLE       =  "<@{b}string@{ub},string,...>" - requester title
            TEXT        =  "<@{b}string@{ub},string,...>" - requester text
            NUMBUTTONS <>= <@{b}value@{ub},value,...>     - # of buttons

  @{b}1.4 SUBPROG specification@{ub}
  Template: TASKNAME   =  "<@{b}string@{ub},string,...>"
            PROCNAME   =  "<@{b}string@{ub},string,...>"
            PROGNAME   =  "<@{b}string@{ub},string,...>"
            PROGNAME2  =  "<@{b}string@{ub},string,...>"

   * programs can be specified only with one keyword!
   * please read ReqAttack Guide for details about keywords meaning

  @{b}2.0 Requester and button colors@{ub}

  Color types:
    RRGGBB value    - normal color definition (hexadecimal), possible to set
                      with sliders or by editing the color string
    Pen number      - # of color in screen's palette, possible to set with
                      color string
    Ignore          - possible with some of entry's, forces ReqAttack not to
                      draw some of lines, shadows, etc.
    def Pens        - colors from Draw-Info stucture of a screen on which the
                      requester will appear

   * it's best to use RRGGBB value, but for some screens pen number can be
     useful, because ReqAttack will not try to lock some of screen pens
     (this causes problems sometimes (ex: Organiser))

  @{b}3.0 Logos, backgrounds, button images@{ub}

  Logo types:
    depends on buttons  - let's you choose different logos for requesters
                          with one (info), two (ask) or more (multiask)
                          buttons
    normal logo         - let's you choose one logo for every requester
                          with current specification
    no logo             - switches logos off

  Built-in logos:
    $INFOLOGO       - default image for one button requester
    $ASKLOGO        - default image for two buttons requester
    $MULTIASKLOGO   - default image for three and more buttons requester

  Built-in button images:
    $OKIMAGE        - default image for leftmost (OK) button
    $CANCELIMAGE    - default image for rightmost (Cancel) button
    $THIRDIMAGE     - default image for other buttons

   * clearing the background strings will force ReqAttack to draw backgrounds
     with colors defined in Requester Colors section
   * clearing the logo or button image string equals to default image

  @{b}4.0 Menu: Button style@{ub}

  Here you can use one of default ReqAttack button styles. Switching on one
of them will set button colors to the predefined settings of selected button
style.

  @{b}4.1 Menu: Inherit changes@{ub}

  When you change the settings of a SCREEN or DEFAULT all children of them will
inherit their new settings according to the selected Inherit option. By default
all SUBREQs and SUBPROGs will inherit all father's settings without logos,
button images and sound.
@endnode

@node 10 "Thanks and greetz"

  @{b}1.0 Thanks from Jaca/D-CAPS@{ub}

   * @{b}Georg Steger@{ub} {georg.steger@rolmail.net} for supporting my
     project and some documentation.

   * @{b}Laffick/D-CAPS@{ub} {unplugged} for betatesting.

   * @{b}Michael Jaccoud@{ub} {topgun@plop.ch} for ReqOFF bug reports.
  
  @{b}2.0 Greetings@{ub}

   * mr.Dark

   * AmigaUserGroup Torun

   * Sven Rieke, BKJ
@endnode

@node r0 "ReqOFF patch"

  @{b}PROGRAM:@{ub} ReqOFF
  @{b}AUTHOR:@{ub}  Jacek Piszczek (Jaca/Dreamolers-CAPS)
  @{b}STATUS:@{ub}  Freeware

  @{b}1.0 What's ReqOFF?@{ub}

  ReqOFF is a patch for Intuition's EasyRequestArgs(). It'll install
itself as this function and will filter all requesters that your
software wants to display. A requester defined in RAPrefsMUI as 'ReqOFFed'
will not be showed and the program that called EasyRequestArgs() will
receive the button number specified in RAPrefsMUI (it'll think that
this button was pressed).

  From ReqOFF version 1.0 it's really safe to use it thanks to the dual
semaphore protection system and rewritten internal structures. It's also
impossible to run ReqOFF twice at the same time - it will cause the
already running patch to quit (NEW!).

  NEW: From version 1.2 ReqOFF will automatically update changes of
reqattack.prefs file (it doesn't update changes while the Preview
function of RAPrefsMUI works to gain maximum speed in showing previews).

  ReqOFF filters all EasyRequestArgs calls and fixes the 'requesters
without titles' problem which appear from time to time (sometimes
ReqAttack (?) doesn't display the default title (System Request)).
All NULL titles will be the task/process name of the program that
called the requester function. Note that requesters opened by Requester
Replacers aren't filtered by this function.

  With ReqOFF 0.7b+ it's possible to run a script/program instead of a
requester. It can be used for requests logs, etc. The supplied
@{"KernelChange" link r1} program can be used with WarpOS's PowerUp Terminator
requester and the @{"Reqlog" link r2} can be used to log all requests in files.

  IMPORTANT: If you used the ReqOFF 0.7 exec function you should remove
all % signs from ReqOFF exec prefs and take look at the 2.3 chapter!

  @{b}1.1 Features@{ub}

   * Possibility to switch off unwanted requesters.

   * Possibility to replace requesters with small programs.

   * No more requesters without titles (new title=task name of caller)

   * Safe to use thanks to semaphore protection system

   * Updates reqattack.prefs changes

  @{b}2.0 Requirements@{ub}

   * ReqAttack 1.2

   * ReqAttack.prefs saved by RAPrefsMUI with min. 1 requester to
     patch with ReqOFF

   * AmigaOS v39+ (3.0), MC68020 CPU

  @{b}2.1 Installation@{ub}

  It's very simple; just put it in your startup-sequence. Remember that
it has to be launched with 'Run >NIL:' and of course AFTER ReqAttack.
(If ReqAttack is in the WBStartup drawer you should move it to C: and
also run it from startup-sequence.)

  @{b}2.2 Quitting@{ub}

  It's possible to remove ReqOFF - just run it once again or use the
QuitReqOFF program. ReqOFF waits 3 seconds after all it's patches
aren't active and then removes itself.

  I DO hope that you use PatchControl program. Otherwise you may have
serious problems with removing patches from system.

  @{b}2.3 Installation: RAPrefsMUI configuration@{ub}

  To turn off a requester switch the ReqOFF function in SUBREQ's
environment and specify the button number. The leftmost (OK) button
is 1 and the rightmost (CANCEL) is 0, middle buttons are 2,3,4...
(numbers grow from left to right of course).
  You should specify SUBREQ's TITLE and/or TEXT.

  @{b}2.4 Installation: RAPrefsMUI configuration: ReqOFF exec@{ub}

  It's possible to replace requesters with your own scripts/programs.
Here you should type the path to your program/script. NOTE: 1. ReqOFF
will return the value returned by this program to the software that
created the requester and not the value configured in RAPrefsMUI.
2. Scripts should have the S bit set or you should execute them with
dos command (ex: execute s:some_requester.script).
  Please look at the supplied KernelChange.e source if you want to
write your own requester replacers.

  All Requester Replacers are launched with an adress of data
structure with requester data as the last argument. The adress is in
the hexadecimal format, preceded by '0x'. The structure contains
4 LONGWORDS with params of EasyRequestArgs call (this means SCREEN,
EASYSTRUC,IDCMP,ARGS). Please take a look at the module for use with
E (replacer.e/m).

  "your_program params" will be executed as "your_program params 0x664C8748"
(that's of course an example - exepect different adresses in this format).

  @{b}3.0 History@{ub}

    @{b}VERSION:@{ub}   0.4beta   ReqAttackUpd release 2
    @{b}INFO@{ub}       1st public version of patcher, buggy and not safe to use

    @{b}VERSION:@{ub}   0.7beta   ReqAttackUpd release 3
    @{b}INFO@{ub}       also checked for SUBREQ's TEXT (hie hie... ;),
               possibility to use a Requester Replacer

    @{b}VERSION:@{ub}   1.0       ReqAttackUpd release 4
    @{b}INFO@{ub}       added semaphore protection system, no more requesters
               without titles, some fixes (thx to Michael Jaccoud)

    @{b}VERSION:@{ub}   1.2       ReqAttackUpd release 5
    @{b}INFO@{ub}       updates changes of reqattack.prefs, gets messages from
               RAPrefsMUI, quits when runned twice, QuitReqOFF program,
               parts of prefs procedures rewritten (thx to Michael)

  @{b}4.0 Limitations@{ub}

   * ReqOFF doesn't care about NUMBUTTONS (and won't)

   * ReqOFF doesn't care about the SCREEN (and won't)

  @{b}4.1 What will change in future?@{ub}

   * send me your ideas!

  @{b}5.0 Legal stuff@{ub}

  ReqOFF is FREEWARE! Spread it only in this archive!
  ReqOFF is ©2000 by Jaca/Dreamolers-Clever Amigants Polish Society
                     (jacadcaps@poczta.onet.pl)
@endnode

@node r1 "KernelChange"

  @{b}PROGRAM:@{ub} KernelChange
  @{b}AUTHOR:@{ub}  Jacek Piszczek (Jaca/Dreamolers-CAPS)
  @{b}STATUS:@{ub}  Public Domain

  @{b}1.0 What's KernelChange@{ub}

  As a BlizzardPPC owner I have typical problems with PowerUp termination
when I want to use WarpUP software. Sometimes after I terminate Phase5
software I forgot that I'm using WarpOS and try to run an ELF program.
Of course I've got ppclibemu installed, but some programs hate this emu-
lation of ppc.library and all PPC software hangs :((
  While developing ReqOFF I had an idea: it's possible to replace the
WarpOS Terinator requester with my own program which will set a variable
to "WarpUP" when I press "Terminate"...

  @{b}NOTE:@{ub} Especially when WarpOS powerpc.library is opened not by typical
tasks (ex: libraries,drivers) the Termination function likes to hang before
opening the requester - it's not my fault. I've tested it without ReqOFF
installed and I had the same problem :( (maybe it's the stack overflow?)

  NOTE: Look at the KernelChange.e - it's so simple!

  @{b}NOTE:@{ub} With KernelChange it's possible to use different setting for AmigaAMP
or some other programs which use both PowerUP and WarpUP kernels. In my case
AmigaAMP is always started after a script like that:

  @{i}IF $kernel EQ "PowerUP"
  Copy sys:prefs/presets/powerup-amigaamp.prefs env:amigaamp.prefs >NIL:
  ELSE
  Copy sys:prefs/presets/warpup-amigaamp.prefs env:amigaamp.prefs >NIL:
  ENDIF@{ui}


  @{b}2.0 Installation/Usage@{ub}

   * Copy KernelChange to C:

   * Create a variable called kernel which will be a string "PowerUP".
     Save it in ENVARC:

     @{i} >setenv kernel PowerUP
      >copy env:kernel envarc:@{ui}

   * Now configure your titlebar text (DOpus/MCP) by adding sth like this:
     Kernel: %evkernel% (DOpus, similar in MCP).

   * Add a requester in RAPrefsMUI (child of DEFAULT) specified with
     TITLE="#?WarpOS#?warning#?", switch on the ReqOFF patch for this
     requester and type "c:kernelchange" (without quota) in ReqOFF exec.

   * Save prefs.
@endnode

@node r2 "Reqlog"

  @{b}PROGRAM:@{ub} Reqlog
  @{b}AUTHOR:@{ub}  Jacek Piszczek (Jaca/Dreamolers-CAPS)
  @{b}STATUS:@{ub}  Public Domain

  @{b}1.0 What's Reqlog@{ub}

  This is a very simple program which can be used to write requests log files.
It opens the wanted requester and then saves it's title, text, button text and
user's choice.

Modify it's source if you want to use it - add the time/date info saving, etc...

  @{b}2.0 Installation/Usage@{ub}

   * Copy Reqlog to C:

   * Add a requester in RAPrefsMUI (child of DEFAULT) specified with
     TITLE="#?" (for use with all requesters), swith on the ReqOFF patch
     for this requester and type 'c:reqlog @{i}"file_to_save_logs"@{ui}' in
     ReqOFF exec.

   * Save prefs.
@endnode

