The MAZE.EXE program was written to demonstrate the fuctions of Microsoft
Windows DDE (Dynamic Data Exchange).  It came from the author with source
code but without other documentation; this file (MAZE.TXT) was added to 
help non-programmer to understand and enjoy the MAZE program.

First, the author's introduction (from the MAZE.C source code file):

 
 * DDE MAZE - SOURCE CODE
 *
 * LANGUAGE     : Microsoft C
 * MODEL        : Small
 * STATUS       : Operational
 *
 * 09/22/87 - Kevin P. Welch - initial creation.
 *
 * The DDE Maze demonstrates how Dynamic Data Exchange (DDE) can be
 * used in multiple server, multiple client conversations.  The maze
 * supports two distinct data items - one used in passing the animated
 * ball between instances of the Maze, the other for reporting vital
 * Maze statistics to an interested listener.
 *
 * Note that the DDE techniques demonstrated in this program are
 * a simplification of the general specification.  In ALL cases
 * where you observe differences between this application and the
 * specification, please follow the published protocol.
 *
 * Special thanks to Ed Fries, Geoff Nichols, and David West as
 * they helped me see the forest from the trees!
 *


INSTRUCTIONS:

(1) Start up at least two -- five or six is better -- copies of MAZE.EXE.
Note that each copy names itself in the title bar by its number in
the startup sequence.  Also, each copy inserts a numbered box in its
window corresponding to the numbers of every other copy of MAZE.  The 
first copy will draw a geometric pattern as the "ball" bounces around the
window.

(2) There are only two MAZE commands, both found in the system menu:
"Grab the ball" and "Grab the focus."  First, toggle on "Grab the ball"
in each copy.  This enables the DDE interprocess communication that tells
the other copies that the copy wants the "ball" when the "ball" hits
its number in the other copy's window.  Once all versions are making DDE
requests for the "ball," it will bounce around from copy to copy based
on the DDE messages being passed from each copy of MAZE to all other 
copies of MAZE.  Any copy that is not requesting the "ball" will have an
inactive number marker in all the other copies.

(3) When toggled on, "Grab the focus" transfers the "focus" or attention 
of MS Windows to the copy of MAZE when the "ball" is passed.  If you use
this option, you will see the title bars changing color/intensity as the
"focus" shifts from MAZE to MAZE.

Each copy of MAZE is a DDE "client" and "server"; in other words, each is
passing information to and receiving information from all the others 
copies by way of the DDE message protocol.  Ambitious Excel owners could
write a macro that would "listen in" to the MAZE DDE dialog, and perhaps
chart the progress of the "ball" along with the other vital statistics
in real-time.

Have fun!

Mark Ryland
CIS 71071,443