GridLock Help
----------------------------------------------------------------------------
                     ' Those who move among the Grid '

                                  GridLock
                                v 95.Dec.12

   Shareware                             Screen Areas 
   GridLock - The Book     
   Development and Testing               Movement and Energy Beams        
                                         Opponent Activity Pulser         
   Setting Up                            Health                           
   For NULL-MODEM                        Inactivity / Health Rejuvenation 
   For MODEM                             Disruptors                       
   For AmiTCP/TCP:                       Disruptions / Inactivity         
   For Multi-I/O Cards                   Teleportation Devices            
   Connecting MODEM/NULL-MODEM           Phimping                         
   Connecting AmiTCP/TCP:      
   Starting                              Sending Messages 

   Configuration 
                                         Pause Game 
   Error Messages                        End Game   
                                         Quitting   
   Future Enhancements 
   Known BUGS                            Winning 

   Note to 512K users                    Legalness  
                                         Thank Yous 

   New in this version 
   Previous versions                                  Locating The Author 


     GridLock is a MODEM or NULL-MODEM or AmiTCP/TCP: two-player game.
============================================================================
GridLock - Shareware
----------------------------------------------------------------------------
GridLock - Shareware
--------------------

A great deal of time has been spent in the development of GridLock.  If
you continue using this game, a Shareware fee of $10.00 or more (CANADIAN)
is requested.  See:  Locating The Author 

The unregistered version does not have all the features of the registered
version and also contains a delay at the beginning of each game.

Your shareware payment helps to insure continued development of GridLock.
See:  Future Enhancements 
============================================================================
GridLock - The Book
----------------------------------------------------------------------------
GridLock - The Book
-------------------

I will be writing a book, the story of GridLock.  This will be a science
fiction book detailing the life of ' Those who move among the Grid '.  It
will contain a complete description of the workings of the Grid, as well
as hints and strategies from GridLock players.  This will be available to
anyone who writes me, at a minimal cost.

If you wish to be one of those lucky few who will have their strategies
included in the book, then write to me detailing strategy information and
the history of your Grid player.

Write to me for more information.  See:  Locating The Author 
============================================================================
Development and Testing
----------------------------------------------------------------------------
Development and Testing
-----------------------

GridLock was originally developed on an Amiga 1000 with 1.5 Meg, beginning
in October of 1990.  It is now being developed on an Amiga 3000T/25MHz
with 18 Meg.

GridLock has been tested on an A3000T/16 Meg FAST/2 Meg CHIP, A3000T/8 Meg
FAST/1 Meg CHIP memory and an A1000 1.5Meg memory.

GridLock has been tested under:
   Kickstart version 40.68 , Workbench version 40.42
   Kickstart version 37.175, Workbench version 38.12
   Kickstart version 34.5, Workbench version 34.32

GridLock has been modem tested with a ZyXEL U-1496E+.

GridLock has been tested with the MultiFace-III Multi-I/O card.

GridLock has been tested with AmiTCP/TCP: (v4.1) using a Hydra Ethernet
connection between two A3000T/25MHz.

GridLock has been tested with AmiTCP/TCP: (v2.3) on a 115200 baud
serial.device network between an A3000T/25MHz and an A3000/25MHz.



============================================================================
Setting Up
----------------------------------------------------------------------------
Setting Up
----------

Both players should be using the same version of GridLock.  In versions
91.Dec.01 and greater, version checks are made automatically.

GridLock requires the following libraries to be located in the LIBS:
directory:

     dos.library                   (system)
     exec.library                  (system)
     graphics.library              (system)
     icon.library                  (system)
     intuition.library             (system)
     mathieeedoubbas.library       (system)

     iff.library                   (included)

GridLock requires the following device to be located in the DEVS:
directory, for use with the internal serial port:

     serial.device                 (system)

GridLock requires the following handler to be located in the L:
directory, for use with the internal serial port:

     port-handler                  (system)

The following files should be contained in the same directory:

     GridLock                     87476 bytes
     GridLock.info                ????? bytes

     GridLockData/GridLock.pic    17400 bytes
     GridLockData/GridLock.pic2   32216 bytes
     GridLockData/GridLock.RAW     8364 bytes
     GridLockData/GridLock.txt     1441 bytes    German: 1622 bytes
     GridLockData/Soound1.RAW     10724 bytes
     GridLockData/Soound2.RAW     14760 bytes
     GridLockData/Soound4.RAW      1022 bytes
     GridLockData/Soound7.RAW      8594 bytes
     GridLockData/Teleport.RAW    19456 bytes
============================================================================
Note to 512K users
----------------------------------------------------------------------------
Note to 512K users
------------------

If you only have 512K of memory you will most likely encounter an OUT OF
MEMORY error when beginning the game.  If this happens, try adding the
SOUNDEFFECTS=NO configuration option.  See:  Configuration 
============================================================================
For NULL-MODEM
----------------------------------------------------------------------------
For NULL-MODEM
--------------

Connect both computers with a standard NULL-MODEM (3 wire) serial cable.

        WARNING!    NEVER connect cables of any kind to your Amiga
                    while the Amiga is turned on.

The following ToolType may be added (SERIAL is default):

                              DEVICE=SERIAL



See:  Configuration 
Applicable Configuration Commands:

                            BAUDNULL   DEVICE 

                         SERIALDEVICE   SERIALUNIT 
============================================================================
For MODEM
----------------------------------------------------------------------------
For MODEM
---------

The following ToolType may be added (SERIAL is default):

                              DEVICE=SERIAL



See:  Configuration 
Applicable Configuration Commands:

     AUTOANSWEROFF   AUTOANSWERON   BAUDMODEM   DEVICE   DIAL   PHONE# 

                         SERIALDEVICE   SERIALUNIT 
============================================================================
For AmiTCP/TCP:
----------------------------------------------------------------------------
For AmiTCP/TCP:
---------------

AmiTCP must be running before GridLock is run.  GridLock requires the
following line to be added to    AmiTCP:db/services

                         gridlock        2900/tcp

2900 is the Port number that GridLock will use when initiating a network
connection.  It is recommended that you use this number, unless it is in
conflict with your system setup.  GridLock will use the 'case sensitive'
alias as shown, in reference to this Port.  It MUST appear in ALL lower
case or you will get a 'Service NOT found' error.

TCP: must be mounted.  This is default for AmiTCP installation.

The following ToolType must be added/edited:

                                DEVICE=TCP



See:  Configuration 
Applicable Configuration Commands:

                               DEVICE   HOST# 

                         SERIALDEVICE   SERIALUNIT 
============================================================================
For Multi-I/O Cards:
----------------------------------------------------------------------------
For Multi-I/O Cards:
--------------------

The following ToolType must be modified to set the proper device handler.


                                SERIALDEVICE

GridLock has been tested with the 'duart.device' for the MultiFace-III
Multi-I/O card.

See:  Configuration 
Applicable Configuration Commands:

                         SERIALDEVICE   SERIALUNIT 
============================================================================
Connecting
----------------------------------------------------------------------------
Connecting MODEM / NULL-MODEM
-----------------------------

GridLock will detect if a modem is connected, automatically. The message
window at the bottom of the title screen will read MODEM or NULL-MODEM,
accordingly.  If you have a modem connected but it is turned off, the
message window will display NULL-MODEM.

If the default baudrate is not wanted then select the baudrate under the
BAUD menu.  Both computers must have the same baudrate set for play.

 For MODEM  use,

   -- One player should select DIAL under the MODEM menu.  This brings up
      a requestor in which the phone number should be entered.  DIAL will
      automatically prepend the defined prefix (ATDT is default).

                                   - OR -

      One player can select a phone number from the PHONE BOOK menu.
      These phone numbers can be stored through the use of ToolTypes.
      See:  Configuration 

   -- The other player should select AUTO ANSWER ON under the MODEM menu.
      If this is already set on the modem, it need not be done again.
      AUTO ANSWER ON sends an ATS0=1 command to the modem by default.
      See:  Configuration 

      Auto Answer can be turned off by selecting AUTO ANSWER OFF under the
      MODEM menu.


 For NULL-MODEM  use,

   -- Insure that the NULL-MODEM cable is connected and continue ...



When both games are running at compatible baudrates and connection is
detected, OPPONENT READY will appear on the title screen.

* The game will automatically check that both games are the same version.
If this is not the case, NOT COMPATIBLE VERSION will appear on the title
screen and the game will not continue.
============================================================================
ConnectingTCP
----------------------------------------------------------------------------
Connecting AmiTCP/TCP:
----------------------

The message window at the bottom of the title screen will read TCP.

 For AmiTCP/TCP:  use,

  *** BEFORE running GridLock, the DEVICE=TCP ToolType must be included
      See:  For AmiTCP/TCP: 


   -- First, one player should select OPEN PORT under the TCP menu.

    * NOTE: AmiTCP/TCP: will wait forever for a connection to this port.
      GridLock has no control over this.  I have provided a script file
      that will allow you to signal the OPEN PORT to ABORT.  Simply click
      on the 'Kill-GridLockPort' icon and it will connect to the GridLock
      Port and send a QUIT command.

   -- Then, the other player should select CONNECT TO HOST under the TCP
      menu.  This brings up a requestor in which the Host Address or Host
      Alias should be entered.  A null entry will abort the CONNECT TO
      HOST.
                                   - OR -

      The other player can select a Host from the HOSTS menu.  These Hosts
      can be defined with ToolTypes.  See:  Configuration 


When both games are running at compatible baudrates and connection is
detected, OPPONENT READY will appear on the title screen.

* The game will automatically check that both games are the same version.
If this is not the case, NOT COMPATIBLE VERSION will appear on the title
screen and the game will not continue.
============================================================================
Starting
----------------------------------------------------------------------------
Starting
--------

If OPPONENT READY is displayed on the title screen then connection has been
established and GridLock may begin.

START may be selected from the GAME menu at this time.  When one player
selects START from the GAME menu, both games will begin.

START may also be invoked through the keyboard equivalent 's'.

START is disabled while an opponent is editing or viewing a message or
changing preferences.
============================================================================
Screen Areas
----------------------------------------------------------------------------
Screen Areas
------------

View GridLock.doc.pic for locations of the different areas and images used
in the game.
============================================================================
Movement and Energy Beams
----------------------------------------------------------------------------
Movement and Energy Beams
-------------------------

All game play is controlled by mouse or joystick.  To change the input
device select the GRIDLOCK/PREFERENCES menu at anytime during the game.

  MOUSE: Use the movement controls (the blue arrows with no lines) to
         move your player.  See: GridLock.doc.pic

         Clicking with the left mouse-button activates the selected
         direction.  Holding the mouse button down and positioning the
         mouse pointer over any of the direction arrows will allow repeat
         movements, without having to click the mouse button for each
         movement.

  JOYSTICK: Push the joystick in the direction you wish to move.  Holding
            the joystick in one direction will repeat movement in that
            direction.

  KEYBOARD: Use the cursor keys for the direction you wish to move.
            Holding the key down will repeat movement in that direction.

To the right of the direction controls are the energy beam generators,
these are used to generate the beams in which to trap your opponent.
These beams are not visible to your opponent unless he moves into them.
You can not generate energy beams along the border of the Grid.

  MOUSE: Select these gadgets in the same manner as above.

  JOYSTICK: Press fire and hold it, then push the joystick in the
            direction you wish to generate a low level beam.

  KEYBOARD: Use the number keys to generate low level beams:

                         8 - Up
                         4 - Left
                         6 - Right
                         5 - Down
============================================================================
Opponent Activity Pulser
----------------------------------------------------------------------------
Opponent Activity Pulser
------------------------

At the top of the opponent health display is an activity pulser.  This
displays the activity level of your opponent.  It has three different
display methods.  If your opponent is active, this displays a three level
sizing pulse (small/medium/large).  After 9 'time units' of inactivity
this will change to a non-pulse display.  When your opponent enters the
health rejuvenation state (at 14 'time units') this will change to a 2
level pulse (dark/bright), and your opponents position will be displayed
while remaining in this state.
============================================================================
Health
----------------------------------------------------------------------------
Health
------

Moving into an opponent's low-level energy beam will absorb energy from
you (decreasing your health) and will change the low level energy beam to
a high level beam.  This is indicated on the Grid as a brighter beam.
Watch for this, to determine where your opponent is.  The last beam that
your opponent has moved into will flash (on/off) for 15 'time units' or
until another beam is moved into.

Generating a beam where an opponent's beam is already located will also
cause a health decrease.

Health decreases work as follows:

        Move into opponent's low-level beam:            -2 health
        Move into opponent's high-level beam:           -0 health
        Generate beam over opponent's low-level beam:   -4 health +
        Generate beam over opponent's high-level beam:  -6 health +

        See:  Disruptions / Inactivity 
============================================================================
Inactivity / Health Rejuvenation
----------------------------------------------------------------------------
Inactivity / Health Rejuvenation
--------------------------------

You may rejuvenate your health by stopping all movement for a period of 14
'time units'.  This will put you in the Rejuvenation state.  Beware that,
while in this state, your Grid position is shown on your opponent's Grid
display.  Health will rejuvenate at a rate of +4 health/'time unit', to a
maximum of 150.  You may exit the Rejuvenation state at any time by
moving.


Health Rejuvenation Overload                     (Registered version only)
----------------------------

Once you reach the maximum health you have 1 'time unit' to move or you
will overload, causing a health decrease of 125 and a reset of the 'time
units' required to enter the Rejuvenation state.

See:  Disruptions / Inactivity 
============================================================================
Disruptors
----------------------------------------------------------------------------
Disruptors
----------

Two types of Disruptors are available.

Timed Disruptor: These devices can be used to cause a timed disruption
                 within the Grid location the Disruptor is placed in.
                 These devices can provide a method of attempting escape
                 when you are trapped within a Grid area -OR- can be used
                 to cause health decrease to an opponent.  Disruption will
                 be delayed by 4 'time units', giving you time to move
                 away from the disruption area.  Only (1) Timed Disruptor
                 may be active at a time.

                 A maximum of (3) are available per game.

Disruptor Trigger: These devices are used to attempt to cause health
                   decrease to an opponent.  A disruption will be
                   triggered if your opponent moves on to a Grid area
                   containing one of these devices.

                   A maximum of (5) are available per game.

  MOUSE: Place a Disruptor device by clicking with the left mouse button,
         in the Timed Disruptor -OR- Disruptor Trigger areas.
         See: GridLock.doc.pic
                                    -OR-

  JOYSTICK/MOUSE: Place a Timed Disruptor by pressing '1' on the keyboard.
       /KEYBOARD  Place a Disruptor Trigger by pressing '2' on the
                  keyboard.


If you are positioned on a Grid location where a Disruption occurs, you
will have a health decrease of 24.
============================================================================
Disruptions / Inactivity
----------------------------------------------------------------------------
Disruptions / Inactivity
------------------------

If you remain inactive, when positioned within a Level-1 Grid Disruption,
Health Rejuvenation does not occur.  Instead, health will decrease as
follows:

        Inactivity Level 0:      1-9 'time units'    -1 health
                   Level 1:    10-13 'time units'    -2 health
                   Level 2:    >= 14 'time units'    -4 health
============================================================================
Teleportation Devices
----------------------------------------------------------------------------
Teleportation Devices
---------------------

Generating four low level beams around yourself in one Grid sector will
generate a teleport, which will transport you to a random sector on the
Grid.  Moving into one of these active teleports will have the same
effect.  These can be used to get you out of a tight spot, or to put you
into one.  You can not enter an opponent's teleport.  A teleport is not
generated if you are not positioned inside the enclosed Grid sector when
you generate the fourth low level energy beam.  All four beams must be
LOW LEVEL to generate a teleport.

MOUSE: Holding the left mouse button down and circling over the four
       energy beam direction arrows provides a quick way to generate a
       teleport.

JOYSTICK: Pressing the fire button and circling the four directions with
          the joystick provides a quick way to generate a teleport.


Teleport Generation Failures                     (Registered version only)
----------------------------
These can cause random destruction of Energy Beams in a stream starting
from the failed teleport.

If this occurs when you attempt to generate a Teleport you will have a
health decrease of 12.
============================================================================
Phimping
----------------------------------------------------------------------------
Phimping
--------

Phimping occurs when both players are positioned within the same Grid
location, at the same time.  This causes a disruption in the Grid and
players' energies.  This is shown by flashing you and your opponent within
the Grid location.  Phimping will continue as long as both players remain
within this Grid location.  Phimping will not cause a health decrease.
============================================================================
Pause Game
----------------------------------------------------------------------------
Pause Game
----------

To pause the game, select PAUSE from the GAME menu, this will signal the
opponent's computer to pause as well.  This option will display a message
at the bottom of your screen, acknowledging that the game is paused.
Press 'ESC' to return to the game.  Your opponent cannot restart the game.
The player who pauses the game must continue it as well.

PAUSE may also be invoked through the keyboard equivalent 'p'.

PAUSE is disabled while an opponent is editing or viewing a message.
============================================================================
End Game
----------------------------------------------------------------------------
End Game
--------

To leave the Grid, select END from the GAME menu, this will signal the
opponent's computer to end as well.  This option will display your
opponent's position and his energy beams on your screen.  Press any key to
return to the title screen, where you may begin a new game.

END may also be invoked through the keyboard equivalent 'e'.

A new game can not begin until both players have returned to the title
screen.  If your opponent has not returned to the title screen the top
message window will display OPPONENT BUSY.  Start cannot be selected until
this window reads OPPONENT READY.

END is disabled while an opponent is editing or viewing a message.
============================================================================
Quitting
----------------------------------------------------------------------------
Quitting
--------

From the title screen, select QUIT from the GRIDLOCK menu to quit the
program.  This will signal the opponent's computer that you have quit.
============================================================================
Winning
----------------------------------------------------------------------------
Winning
-------

If your opponent selects END GAME or loses all his health, the GridLock
logo will appear in the center of your game board, press any key to
display the opponent's position and energy beams on your screen.
============================================================================
Sending Messages
----------------------------------------------------------------------------
Sending Messages
----------------

At the title screen (after connection has been made) or during the game,
you can send messages to your opponent by pressing the SPACE-BAR.  Doing
so will bring up a message requestor.  This message requestor supports
left-right cursoring, auto insert, delete, and all characters except the
quotation mark.  Pressing RETURN terminates the message entry and sends
the message to your opponent.  A null message will not be sent.

Press 'ESC' to remove a message sent to you by your opponent.

You can not continue play while entering a message, or when an opponent's
message is displayed on your screen.
============================================================================
Configuration
----------------------------------------------------------------------------
Configuration
-------------

GridLock supports configuration through use of Workbench ToolTypes.  If
any options are not included as a ToolType, the stated defaults will be
used.

ToolTypes can be typed in upper or lower case or any combination of the
two.  To have a ToolType ignored surround it with brackets ( ).

For example:
                            (ToolType=Value)


Invalid settings and ToolTypes will be ignored.  In this case, the default
values will be used.

The following configuration commands are supported:

  AUTOANSWEROFF=
    Description: this option allows the setting of the modem command sent
                 when AUTO ANSWER OFF is selected from the MODEM menu.

    Valid values: See your modem manual for valid entries.

    Default: ATS0=0

    Example: AUTOANSWEROFF=ATS0=0


  AUTOANSWERON=
    Description: this option allows the setting of the modem command sent
                 when AUTO ANSWER ON is selected from the MODEM menu.

    Valid values: See your modem manual for valid entries.

    Default: ATS0=1

    Example: AUTOANSWERON=ATS0=1


  BAUDMODEM=
    Description: this option allows the setting of the default baudrate
                 for MODEM use.

    Valid values: 1200, 2400, 4800, 9600, 14400, 19200

    Default: 2400

    Example: BAUDMODEM=2400


  BAUDNULL=
    Description: this option allows the setting of the default baudrate
                 for NULL-MODEM use.

    Valid values: 1200, 2400, 4800, 9600, 14400, 19200

    Default: 9600

    Example: BAUDNULL=9600


  BRIGHTNESS=
    Description: this option allows you to set the brightness level of the
                 game screens.  This option is also available through the
                 GRIDLOCK/PREFERENCES menu.

    Valid values: 0, 1, 2, 3

    Default: 0

    Example: BRIGHTNESS=3


  CONTROL=
    Description: this option allows the setting of the input device.  This
                 option is also available through the GRIDLOCK/PREFERENCES
                 menu.

    Valid values: JOYSTICK, MOUSE, KEYBOARD

    Default: JOYSTICK

    Example: CONTROL=MOUSE


  DEVICE=
    Description: this option allows the setting of the communication
                 mode.

    Valid values: SERIAL, TCP

    Default: SERIAL

    Example: DEVICE=TCP


  DIAL=
    Description: this option allows the setting of the modem code sent
                 preceeding the entered phone number.

    Valid values: See your modem manual for valid entries.

    Default: ATDT

    Example: DIAL=ATDP


  HOST#=
    Description: this option allows the setting of up to 10 Host Name
                 entries (0-9).

    Syntax: HOST#=Text=HostAddress
      Where: #           - is a number from 0 to 9.
             Text        - is text to be displayed under the Hosts menu.
             HostAddress - is a valid Host Address or Host Alias.

    Default: No Host entries.

    Example: HOST0=dhomas=123.123.123.1
             HOST5=dhomas=A3000T
             HOST9=dhomas=dhomas

  INTRO=
    Description: this option allows the disabling/enabling of the
                 soundeffects played at startup.

    Valid values: YES, NO

    Default: YES

    Example: INTRO=NO


  PHONE#=
    Description: this option allows the setting of up to 10 PHONE BOOK
                 entries (0-9).

    Syntax: PHONE#=Text=PhoneNum
      Where: #        - is a number from 0 to 9.
             Text     - is text to be displayed under the PHONE BOOK menu.
             PhoneNum - is a valid phone number to be dialed.

    Default: No phone entries.

    Example: PHONE3=Johnny Who=555-1515
             PHONE5=Peter=555-1999
             PHONE9=Zorna Bomp=111-1112


  SERIALDEVICE=
    Description: this option allows the setting of the device to use for
                 serial communication with multi-I/O cards.

    Valid values: serial.device, ...

    Default: serial.device

    Example: SERIALDEVICE="duart.device"


  SERIALUNIT=
    Description: this option allows the setting of the unit number to
                 use for serial communication with multi-I/O cards.

    Valid values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

    Default: 0

    Example: SERIALUNIT=1


  SOUNDEFFECTS=
    Description: this option allows the disabling/enabling of the
                 soundeffects in the game.  Setting this to NO also
                 disables the INTRO= soundeffects.

               * If you are experiencing OUT OF MEMORY ERRORS then try
                 setting this option to NO.

    Valid values: YES, NO

    Default: YES

    Example: SOUNDEFFECTS=NO




















============================================================================
Error Messages
----------------------------------------------------------------------------
Error Messages
--------------

Time-out ERROR                                GridLock

- GridLock has received normal communication data but expected more
  information.  Most likely, there is a problem with the connection
  between computers.


Port NOT found                                AmiTCP/TCP:

- GridLock Port has not been opened by your opponent.

- Insure that the GridLock alias has been properly defined in your
  AmiTCP:db/services file.  See:  For AmiTCP/TCP: 

- Error in Host Address or Host Alias names.


TCP: NOT mounted                              AmiTCP/TCP:

- AmiTCP/TCP: is not running/mounted or inet-handler is not being used.


Service NOT found                             AmiTCP/TCP:

- TCP could not find a service entry for 'gridlock'.  Either you forgot
  to put it in, or it was not all in lowercase.  See:  For AmiTCP/TCP: 

Error: ####                                   AmiTCP/TCP:

- GridLock has encountered an unexpected error when opening the GridLock
  Port or attempting to connect to the GridLock Port.  Please inform me of
  this error number if you encounter a problem with it.
============================================================================
Legalness
----------------------------------------------------------------------------
Legalness
---------

GridLock is copyright 1990-1995 by 'young monkey studios'.  The files
included with this distribution may not be altered in any way.  GridLock
is released as Shareware - You are required to pay a  Shareware fee  if
you continue to use this software.

The game concept and design remain the property of the author, scott dhomas
trenn and 'young monkey studios'.

Without written permission:  This game may not be sold in any form, or be
included on any disk with other programs being sold.  It may not appear on
any magazine disk.

Permission is granted for this program to appear in the FRED FISH LIBRARY
and on Aminet CDRom compilations.

The author is in no way liable for any damage resulting from the use of
this program.
============================================================================
Future Enhancements
----------------------------------------------------------------------------
Future Enhancements
-------------------

-  More than two players
-  Weapon control with mouse when in Joystick mode???
-  Replace iff.library with iffparse.library
-  Replace direct hardware audio with audio.device calls
-  Front/Back gadget
-  New weapons: Kill, etc.
-  More disruptors
-  Modem commands: ATD, ATA, etc.
-  Grid Demons (Programmable)
-  Configurable colors
-  Default baudrates for phone book entries
-  Selectable Grid designs
-  Grid design tool
-  End of game determination ???
-  Modem carrier drop detection
-  GridLock font
-  Music soundtrack
-  Demo mode
-  Save game
-  Energy levels
-  Energy failures
-  Communication error checking (Not necessary for AmiTCP/TCP:)
-  Playback of completed games (both players on one screen)
-  EndGame buffer parsing
-  and MORE...
============================================================================
Known BUGS
----------------------------------------------------------------------------
Known BUGS
----------

-  The game sometimes locks up upon first entering the Grid, requiring a
   reboot.  I am aware of the problem, but can not find the reason for it.
   I believe that this only occurs when using joystick.  This may have
   been fixed.

-  Weird things may happen if both players are at the same location
   and building beams and things.  This will require changing some of the
   game method of play.  Soon.

-  OPPONENT BUSY is sometimes not being displayed.  Looking into this.
   This may have been fixed.

-  Game decides to end all on its own.  Happens rarely, but it has
   happened.  This may have been fixed.
============================================================================
Locating The Author
----------------------------------------------------------------------------
Locating The Author
-------------------

If you like this program and would like to reward me for my efforts, or
for bug reports, program ideas, or questions, or just to tell me about
where you live.

I can be contacted through INTERNET EMAIL at:


                          dhomas@youngmonkey.ca

Or by MAIL at:
                            scott dhomas trenn
                           young monkey studios
                           797 Mitchell Street
                             Fredericton, NB
                             CANADA  E3B 3S8


Registered users may send me $5.00 (CANADIAN) and a disk, for the latest
version of GridLock or receive a free update through EMail.

Be sure to include the version number you are currently using, and the
name of the program you want, so I do not send you a version you already
have or a program you do not want.  The version number can be found on the
title screen just under the GridLock name, at the top of this .doc file
just under the GridLock name, or by typing:

                             Version GridLock

at a shell prompt.  It looks similar to     93.Dec.12

When reporting bugs or errors generated when you run GridLock, please
include any GURU numbers, error numbers or line numbers given by GridLock
and also the version number you are using.  This will aid me in tracking
down the problem.  Thank-you.

If you have an EMAIL address please include that with your letter.
============================================================================
Thank Yous
----------------------------------------------------------------------------
Thank Yous
----------

Thanks to the following people for beta-testing, suggestions, and bug
reports:

- Peter McGavin        - Lower Hutt                  NEW ZEALAND
- Anthony Jackson      -                             UK
- Alexander Wipf       -                             GERMANY (translation)
- Fionn Behrens        -                             GERMANY
- Terry Wood           - Winnindoo                   AUSTRALIA
- Troy Morehouse       - Fredericton, New Brunswick  CANADA
- Greg Patterson       - Montreal,    Quebec         CANADA
- Nickey MacDonald     - Fredericton, New Brunswick  CANADA
- The Shockwave Surfer - Fredericton, New Brunswick  CANADA
- Karl Hoyt            - Saint John,  New Brunswick  CANADA
- Todd Bailey          - Fredericton, New Brunswick  CANADA
- John Tarrel          - Fredericton, New Brunswick  CANADA


Thanks to the following people for their assistance implementing support
for AmiTCP/TCP:

- Tomi Ollila          - too@cs.hut.fi
- Markus Peuhkuri      - Markus.Peuhkuri@hut.fi

For more information about AmiTCP contact amitcp-group@hut.fi


                                                            - dhomas trenn
============================================================================
Previous versions
----------------------------------------------------------------------------
New In Version 94.Dec.10
------------------------

- Major bug, which was the reason for most lock-ups, has been fixed.  This
  was a problem caused by the compiler, not my program.  YEAH!

- 'SERIALUNIT=' and 'SERIALDEVICE=' configuration commands added to allow
  multi-I/O card support.

- Status of the serial control lines is now determined by a SDCMD_QUERY
  call, rather than a direct hardware read.

- Null Phone Numbers are no longer dialed.

- In MODEM mode, exiting preferences no longer activates a connection.

- Updated my EMail address and the copyright year.

- Added Error.Handler for the serial device.

- Added support for 14400 baudrate.

- Replaced GridLock.cfg with support for Workbench ToolTypes.

- Changed the use of 'HOST=' and 'PHONE=' settings.

- Fixed error in Set.Brightness routine.

- Complete re-write of all serial communication.

- Text strings are now read from an external file.  German language file
  is now included.

- Current directory is now returned to entry state, upon exit.

- Implemented a connection re-syncing handler.

- Implemented "Connecting..." notification in NULL-MODEM mode.

- Updated GridLock.pic with wider message boxes and new graphics.

- Fixed bug in the preferences window, which always displayed 'Control' as
  Joystick, regardless of its setting.

- Updated GridLock.pic2 with new message and error boxes, and graphics.

- 'Press ESC...' and 'Press ANY KEY...' message directives added.

- New icons.

- Added German text installation script and icon.



New In Version 93.12.16
-----------------------

- Complete rewrite of all communication routines.  As a result, there is
  less data being transfered and it is more reliable.

- Implemented communication time-outs.

- Updated GridLock.pic with my new MAIL address and EMAIL address.

- 'INTRO=' configuration command added.

- Grid Disruptors and Disruptions now implemented.

- 'Preferences' menu removed.  Moved options to a Preferences editor
  available from the 'GridLock/Preferences' menu.  Preferences editing is
  now only available from the title screen.

- Phimping now implemented.

- Updated GridLock.pic2 to support Timed Disruptors.

- Modified the $VER string contents displayed by the DOS 'Version'
  command.

- Menus are now disabled during message display.

- 'Opponent Busy' message now displayed when opponent is editing or
  reading a message on the Title Screen.

- 'Game/Start' now disabled when opponent is busy on Title Screen.

- Null messages are no longer sent to opponent.

- 'Game/Pause' and 'Game/End' are now disabled if opponent is editing a
  message.

- Updated GridLock.doc.pic to show new features.

- New sound effects.

- Inactivity is now determined from start of game, not from first movement
  as in previous versions.

- Modification to Inactivity occurances in conjuction with Disruptions.

- Improved the initial Connect communication method.

- Improved the GameEnd communication method.

- Added AmiTCP/TCP: support for networks.

- 'DEVICE=' configuration command added.

- 'HOST=' configuration command added.

- Fixed some display bugs.

- Added a method to assist me in finding bugs, should someone contact me.

- Converted documentation to AmigaGuide format.

- UnImproved the GameEnd communication method.

- ReImproved the GameEnd communication method.

- Improved the Configuration file parsing.

- Improved the speed of control processing.



New In Version 91.12.01
-----------------------

- Added some real sound... more to come... should play at the proper speed
  on PAL machines, too.

- 'SOUNDEFFECTS=' configuration command added.  Actually, it existed all
  along, it is just that I am the only one who knew it.

- Moved all the GridLock data files into their own directory GridLockData.

- Fixed a bug when checking if the serial port was free.  It could not
  always tell.  It worked with communication software but not with MIDI
  software.

- Open.Error routines improved.  If all the GridLock data files are in
  there proper place and none have been changed then you will never see
  this.

- Temporary flashing-BeamBrights now implemented.

- 'Opponent Busy' bug fixed; but now there is a different one.

- Message display routine optimized.

- 'Pause' selection added to 'Game' menu.

- 'Mouse/Joystick' selection moved to 'Preferences' menu.

- Ghosted menus when in 'Game-Pause' and 'Game-End' modes.

- Cleaned up the GameEnd routines.

- Fixed the mysterious "What is he doing up there!!" bug, finally!  YEAH!

- Keyboard equivalents for 'Game-Start', 'Game-Pause' and 'Game-End'
  implemented.

- 'Info' menu changed to 'GridLock'.  Might become 'Project'.

- 'Rules' menu selection removed.

- Version compatibility check is now made.

- 'Activity Pulser' and 'Health Rejuvenation' now implemented.

- Changed some of the communication method.

- Slowed down the rate of health decrease when you try to build a beam
  where a beam already existed.

- Replaced timer checks and delays with functions that better handle the
  evil midnight.

- Added GridLock.doc.pic which shows the different areas of the game
  screen.



New In Version 91.10.23
-----------------------

- Support for WB2.x 'Version' command added.  You can now type:

                  Version GridLock

	from the SHELL/CLI and it will display the version of GridLock.

- 'BRIGHTNESS=' configuration command added.

- 'Preferences' menu added, for 'Brightness' setting.

- 'Quit' menu option is now disabled when playing game.  Use 'End Game'
  to quit the game and return to the title screen, where you may then
  quit GridLock.

- A '-- Opponent has QUIT --' message is now displayed when your opponent
  selects 'Quit' from the title screen.  When you press 'ESC' to clear the
  message, GridLock will exit.  The assumption is that, if you do not have
  anyone to play with then you will want to quit as well.

- Changed all the 'Busy Wait Loops', that would not effect the game play,
  so that they do not 'Busy Wait'.  (Greg!)



New In Version 91.09.14
-----------------------

- Fixed (???) no 'Phone Book' entries crash, under WB2.x

- Made the title-screen more multi-tasking.  I have not altered the game
  play multi-tasking as this does not provide consistent game play.  I am
  not, yet, convinced that there is a need for multi-tasking while playing
  the game! (Greg!)



New In Version 91.06.20
-----------------------

- Fixed an alternative NULL-MODEM cable bug



New In Version 91.03.02
-----------------------

- General beautifying and code cleanup.  Still more to come.

- Checks if required files are available.  Exits clean if any files
  are unavailable.

- Configuration file implemented

- No longer loads the grid with each new game

- Much less communication between computers

- Phone book implemented

- Exits cleanly if serial port is already in use

- MODEM / NULL MODEM determination

- Opponent READY / NOT READY

- Joystick control

- Opponent detection

- Beaming an opponents beam, drops health

- Quit no longer exits game for opponent

- Health of 0 no longer exits the game

- Fixed lockup when modem turned off or on

- Gadget hi-lighting

- Menu activation based on conditions

- Messages can now be sent from title screen

- MODEM / NULL-MODEM message window on title screen

- Added 4800 baudrate

- Opponent teleports are now detected

- Now requires mathieeedoubbas.library.  Why?  I do not know!



New In Version 90.10.19
-----------------------

- REPEAT movement.

- Added 'Auto Answer OFF' to 'Modem' menu.  (Uses ATS0=0 command)

- Changed 'Auto Answer' menu option to 'Auto Answer ON'

- Now detects NULL-MODEM connection.



New In Version 90.10.11
-----------------------

- Support for 1200, 2400, 9600, and 19200 baud.  DEFAULT = 2400 baud

- Support for Modems.  (Uses ATDT and ATS0=1 commands)

- Allows setting of Auto-Answer on MODEM.

- Message requestor now supports the comma.

- You can no longer accidentally clear your opponent's message.  Now,
  press <ESC> to remove a message sent to you by your opponent.

- When END, from the GAME menu, is selected by either player, GridLock
  now displays your opponent's position when it shows the GRID.
============================================================================
New in this version
----------------------------------------------------------------------------
New In This Version
-------------------

- Changed device open/close routines so that GridLock now works under 1.3
  again.

- Updated email and mail address.

- Changed Kill-GridLockPort script to use 'localhost' instead of
  '$HOSTNAME' and 'gridlock' instead of 'GridLock'.

- Changed TCP service entry to all lowercase.  Change your db/services
  entry to 'gridlock' instead of 'GridLock'.  It seems to be standard and
  most people were doing that way anyway (which would not work before).

- Added 'Service NOT found' as a detectable error message for TCP.

- Realized that the open/close routines were not the only thing wrong
  under 1.3.  For some unknown reason 1.3 does not like certain
  characters to go across the serial line.  Changed them so they are no
  longer transferred.

- Moved Control preferences to menus so you can change the control device
  during game play.

- Added Keyboard control.

- Added error #205 to 'Port NOT found' error message for TCP.

- When prompted to 'Press ANY key' at the end of a game, you many now
  press the left mouse button instead.

- 'Press ESC to QUIT' message directive added for lockups that occur when
  the opponents computer has crashed when ending game.

- Changed the game won 'GridLock' indication to a timed display rather
  than ended by a key press.

- Slowed down the speed of the Health buildup at beginning of game to
  encourage registration. :)

- Fixed a bug in the Health routine that caused parts of the screen to be
  erased if Health went below 0.

- Fixed a few errors in the documentation files.

- Added Rejuvination Warning sound.


REGISTERED VERSION
------------------

- Added the possibility of Teleport generation failures.  This can cause
  random destruction/generation of Energy Beams in a stream starting from
  the failed teleport.

- Increased the speed of the Health buildup at beginning of game.

- Implemented Health Rejuvenation Overload which occurs if you do not
  move for too long.

- Added Rejuvination Overload sound.
============================================================================
