This directory contains an example of user code which can extend the
simulator data structures and extend the simulator command interface.
It is described in the Advanced Programming Manual.  Make the simulator
by typing `make'.  An executable `sim' will be produced.  Run this
executable.  When the command prompt appears, type `call build'.  When the
command prompt re-appears, type `d u 0' and you will see unit 0 displayed.
Note that each link has a set of "delays" associated with it.  These
represent the number of simulation steps that it takes to propagate the
output of the originating unit to the destination unit.  For example, you
will see that the first link has 9 delays.  At each step the values are
shifted up one step and the incoming value placed at the bottom.  The
unit finally receives the activation when the value reaches the top of the
list.

Type `out 9 20' to the prompt.  Then type `go'.  Then display unit 0 again.
You will see that the 9th delay on the first link has the value and weight
set, but it has not been used.  Type `go 8' and the value will have moved
to the top of the link.  Meanwhile other links will have values from other
units that were activated by the output of unit 9 earlier.  But unit 0
has output 0 still, because none of the values on the links have reached the
top of the lists.  Type `g' again, and you will see that finally unit 0
has received the activation from unit 9.

The delay on the links is simple the absolute difference between the unit
indices of source and destination unit.  So the link from unit 9 to unit 0
has 9 delay values

Now type `?' to the prompt.  The available commands will be listed.  The
last one will be `linkdata'.  This is a new command which was defined in
the user code in `userdef.c'.  Type `help linkdata' to see what you can do
with it.

You can examine the code `userdef.c' to see how all this is done.

