               FIXAOE1 Joystick Utility Program V1.00 
                                for
                         Aces Over Europe

               Copyright(c) 1993 by Robert L. Church
                        All Rights Reserved
                        CIS ID:  73207,3242

This file contains a patch for Aces Over Europe which allow you to set the 
width of the 'Dead Zone' near center stick in which the stick is considered 
centered. On the far side of the legalese are some instructions for using the 
patche and some background information about what it does.

                         DISCLAIMER - AGREEMENT

Users of these programs must accept this disclaimer of warranty:

 "This software is supplied on an AS IS basis. The author specifically 
  disclaims ANY warranty, expressed or implied, as to the fitness for any 
  particular purpose of the software. Under no circumstances will the author 
  be liable for any direct, consequential, special, indirect, or other damages 
  including, but not limited to, loss of data, profit, or the use of the 
  software arising from the distribution, use, misuse, or inability to use 
  the software. YOU USE THIS SOFTWARE AT YOUR OWN RISK. BY USING THE SOFTWARE, 
  YOU AGREE TO THE TERMS OF USAGE SET FORTH IN THIS DISCLAIMER."

                              NOTICE

These programs are not in any way connected with or endorsed or supported 
by CompuServe, Inc., Dynamix, Inc., or Sierra On-Line, Inc.

                            TRADEMARKS

CompuServe is a trademark of CompuServe, Inc.
Red Baron, Red Baron Mission Builder, and Aces of the Pacific are trademarks 
  of Dynamix/Sierra On-Line, Inc.

                        DISTRIBUTION NOTICE

This program is being released by the author as freeware. It is NOT public 
domain! You may copy and use the program freely. You may distribute it to 
whomever you like but:

         1. Do NOT distribute modified versions.
         2. Do NOT remove the copyright notice.
         3. ALWAYS distribute with the documentation.

No other limitations are placed on the usage of the software. No fee is
charged for the use of the software.

                           *** WARNING ***

These programs make permanent modifications to the .EXE files in the
simulator programs. PLEASE MAKE BACKUPS before doing any patching. Once
the patches are made, there is no easy way to restore the programs to there
original form. So long as you have a backup, all you need to do is copy the 
old one back and no damage is done. Things can go wrong whenever a patch
is being applied. I cannot stress this too strongly. BACK THEM UP.

I have tried to make the programs as safe as possible. They verify that
they are working on the right piece of the program by checking for the
signature of the code around the patch, the relative position of the
various patched routines, and the number of occurrences of particular byte 
sequences within the program. If all of the proper indications are not 
received, the programs will not patch. Still, BACK THEM UP. You've been
warned.

  ===================== Additional Documentation =====================

FIXAOE1.EXE

    The program makes some slight modifications to the joystick read 
    routines in AOE. The changes made primarily affect the stick 
    response when it is near its center position. The primary effect is
    to adjust the 'dead zone' around center which defines how far you
    have to move the stick before the sim actually responds. The second
    effect of the patches is to provide slightly finer response near
    center stick.

    Before using the FIXAOE1 patch, you should get a copy of the Dynamix
    AOE patch for AOE Version 1.00. It is available as AOEPAT.ZIP in
    GAMCPUB, Lib 11, or as AOEPAT.EXE from the Sierra BBS. The FIXAOE1
    patch should work with or without the AOEPAT patch being applied, but 
    I have only tried it on E.EXE with that patch installed. The AOEPAT patch
    fixes other problems with the joystick and will be found to be generally
    beneficial.

    To use FIXAOE1, put the file FIXAOE1.EXE in your AOE directory, usually 
    C:\DYNAMIX\AOE, do a CD\DYNAMIX\AOE and type FIXAOE1 dead zone<enter>. 
    The program patches only the main simulation file, E.EXE.

  ====================================================================

                            Background

When the sim gets done scaling the values it reads from the joystick, it
ends up with a number which is between -127 and +127, with 0 corresponding
to center stick. It normally just translates any value between -8 and +8
to 0. Thus the standard dead zone is 8 (actually 16 counts wide, or about
1/16th of stick travel in either direction).

The patches change this number to be +/- whatever you ask for. Thus, a dead 
zone of 32 will widen it until it covers about 1/4th of total stick movement,
which is pretty wide.

Widening the dead zone alone is not a very satisfactory method of achieving
the desired result. The problem is that, with the standard scaling method,
you can't get a value through the dead zone routine which is less than the
dead zone. Using the standard value of 8, you can't actually set the stick
to any value between 1 and 7. The sim makes them 0. When you hit the edge
of the dead zone, the value jumps up to 8. This is not too noticeable with
the standard value, but when you increase the dead zone, it becomes very 
noticeable. At a dead zone of 32, for instance, you get 0, then suddenly
a 32, which will roll the aircraft pretty quickly.

The patche gets around this by recurving the joystick response so that the 
values come up from 0 when you leave the dead zone. This gives pretty fine 
control at the edge of the dead zone, but a steeper curve as you leave the 
dead zone. The stick response gets a little 'progressive' in the way it feels.

A little ASCII art may explain it better. Plotting stick movement on the
X axis vs return value on the Y axis, the dead zone is the flat section in
the center. Center stick is in the center.


Before the patch:

             127   ------------------------------
                   |                         *  |
                   |                       *    |
                   |                     *      |
                V  |                   *        |
                A  |                 *          |
                L  |                 *          |
                U  |           * * * *          |
                E  |           *                |
                   |           *                |
                   |         *                  |
                   |       *                    |
                   |     *                      |
                   |   *                        |
            -127   ------------------------------
                        <- Stick Movement ->


After the patch:

              127  ------------------------------
                  |                           * |
                  |                         *   |
               V  |                       *     |
               A  |                     *       |
               L  |                   *         |
               U  |           * * * *           |
               E  |         *                   |
                  |       *                     |
                  |     *                       |
                  |   *                         |
                  | *                           |
            -127  -------------------------------
                        <- Stick Movement ->


                            Compatibility

I'm not sure if the patch will be compatible with all control combinations.
I've tried the program with dead zones of 16 and 32 and my PFCS hat switch
seems to work fine. I'm a little worried that wide dead zones may cause
some interaction with the hat or a throttle stick. I haven't been able
to detect any, but I can't rule them out. Narrower dead zones (8-16) would
be less likely to affect their operation. 

