Release 2.1

    GENESIS 2.1 includes significant changes to the hsolve library, a
    new version of the concen library, two dimensional tables and
    tabulated channels, support for modeling GHK channels, kinetics
    library and toolkit, system independent binary data files (plug
    replaceable with disk_in and disk_out) and additional enhancements
    and fixes for existing GENESIS features.  See the Doc/Changes.doc
    file for an overview of the major changes.

    - General simulation system changes

	- Changes necessary for compatibility with PGENESIS 2.1 have
	  been integrated into GENESIS 2.1, allowing PGENESIS 2.1 to
	  compile with GENESIS 2.1 without additional patches.

	- The problem with conflicts between the standard UNIX getopt()
	  function and the GENESIS version of the same name has been
	  resolved.  As a result the GETOPT_PROBLEM macro is no longer
	  necessary.

	- Portability changes for Linux glibc, Machten, SGI IRIX 6.x,
	  CRAY T3D and T3E.

	- Compartments now have two points associated with them making
	  it easier to determine orientation of cylindrical compartments.
	  This change does not require any changes to scripts or cell
	  files.

    - Changes to objects and commands

	- The setfield command now accepts the -empty_ok option which
	  allows the setfield command to contain no field value pairs.
	  This is utilized in PGENESIS.

	- The effective firing rate for randomspike prior to GENESIS
	  2.1 was always lower than the value given by the rate field
	  when abs_refract was greater than zero.  Specifically, the
	  effective rate was:

	    rate / (1 + abs_refract*rate)

	  To get a desired rate the rate field had to be set to:

	    desired_rate / (1 - abs_refract*desired_rate)

	  In GENESIS 2.1, randomspike performs this rate correction
	  automatically so that the effective firing rate matches the
	  value given in the rate field.  Because the effective rate
	  can never be higher than 1 / abs_refract, the value given in
	  the rate field should always be lower than 1 / abs_refract.

	  A second change to randomspike affects its treatment of the
	  refractory period at reset.  When used to generate high firing
	  rates, multiple randomspikes would tend to syncronize.  To avoid
	  this behaviour, randomspike now initializes to a random phase of
	  the refractory period a reset.

	- Two new versions of planaredelay and planarweight, planardelay2
	  and planarweight2, have been added which reduce the setup time
	  for network models.  These versions require that the destination
	  elements be given on the command line.

	- The readcell command knows about the new channel and concen
	  library objects.  A new -hsolve option replaces the usual
	  neutral object at the root of the cell heirarchy with an
	  hsolve element which saves creating the hsolve explicitly
	  in script code.  The default hsolve path is set to find
	  the compartments ralative to the hsolve.

	- The synchan object may now be used with the higher chanmode of
	  hsolve.

	- There have been major performance and user interface improvements
	  for the hsolve object.  The chanmodes have been reorganized to
	  present a progression from most general/least restrictive/slowest
	  to most restrictive/fastest.  Chanmode 0 now allows interoperability
	  of hsolve with any external channel.  See Doc/hsolve.doc for details.

	  Internal values within hsolve can now be accessed allowing
	  output of values directly from hsolve even when using the fastest
	  hsolve modes.  See Doc/findsolvefield.doc for details.

	  Hsolve includes support for the new concen library, tab2Dchannel,
	  ghk and synchan objects.

	- The concen library for calculating concentrations and diffusion
	  has been completely replaced.

	- The tab2Dchannel object provides two dimensional tablulated
	  channels which may be used to model calcium activated channels
	  more efficiently.

	- The kinetics library for modeling molecular kinetics has been
	  integrated with GENESIS 2.1 allowing use of the Kinetikit
	  graphical toolkit.

	- The res_acs_file object works like asc_file, but only output a
	  new value when the value changes.

	- The par_asc_file and par_disk_out objects implement version of
	  asc_file and disk_out for PGENESIS.

	- spikehistory outputs spike timings tagged by neuron to a text file.

	- The diskio object provides a plug replacement for both the disk_in
	  and disk_out objects which reads and writes netcdf format files
	  rather than the non-portable GENESIS FMT1 files.  The disk_in and
	  disk_out objects continue to be available for reading/writing FMT1
	  files.

	  Netcdf is a system independent binary file format which supports
	  multiple variables and meta data which can be associated with
	  the entire file or with individual variables within the file.
	  See Doc/diskio.doc for more informaiton.

    - Graphics changes

	- xforms can now be nested using the '-nested' create option
	  allowing widget elements to be grouped as a unit.

	- Postscript output now compresses long sequences of horizontal and
	  vertical lines into a single output line.  This can significantly
	  compress the postscript produced for spiking output.

    - Makefile and system support changes

	- The main Makefile has been simplified considerably.

	- Settings for compiling 64-bit Silicon Graphics IRIX binaries
	  have been added to the main Makefile.

    - Bug fixes

	- disk_in no longer skips the first 80 bytes when reading from
	  text input files with leave_open set.

	- A bug in which wildcard element paths naming a range of indexed
	  elements were treated as if only the first element were named
	  (e.g. unit[4-7] would be treated as unit[4]) is fixed.

	- Erroneous warnings from the check command regarding element
	  clock settings no longer occur.

	- stdlib.h is now included in various places which results in
	  the proper declaration of the function signature for malloc().
	  This may improve the situation with some 64-bit systems, but
	  has not be tested there as yet.

	- The readfile command no longer prints an error message on
	  encoutering end of file.  It returns an empty string.  Script
	  code should use statements of the following form in order to
	  detect end of file correctly

	    line = {readfile aFile -linemode}
	    while (!{eof aFile})
		<process line from the file>

		line = {readfile aFile -linemode}
	    end



Release 2.0.2

    Release 2.0.2 supports the latest parallel GENESIS release including
    support for the CRAY T3D/E and the Intel Paragon.  It also addresses
    problems compiling and running on the Dec Alpha, performance issues
    in message setup and element lookups and many additional bug fixes.
    The getmsg command has also been extended to allow script code to
    get message values which allows extended objects with a PROCESS
    action to be written.  Specific changes include:

    - General simulation system changes

	- Added a USECLOCK action which is called prior to changing an
	  element's clock; action->data is an int* to the new clock value;
	  return 0 to disallow setting, non-zero to allow setting

	- Changed handling of .simrc lookups; if -execdir is given on the
	  command line checks first in -execdir directory then in HOME
	  directory; without -execdir checks in working directory then
	  in HOME

	- tabchannels and readcell now obtain script variable values
	  as doubles rather than float to maintain double precission

	- SetTable() now checks for valid table names properly

	- the help command now prints the README file in the Doc directory
	  when no help topic is given

	- a missing .simrc file on startup now causes the simulator to
	  exit with instructions to copy a .simrc from the startup
	  directory

	- added the reclaim command which explicitly recovers memory
	  from delete elements; this should only be needed in simulations
	  which do multiple simulation runs deleting and recreating the
	  element heirarchy for each run

	- the getmsg command now has a "-slot msg# slot#" option to obtain
	  slot data

	- the setfieldprot command now supports a -debug option to turn on
	  a debug mode in which all hidden fields are treated as if they
	  were readonly; in addition, the user will be allowed to downgrade
	  the protection for any field to readwrite; setfieldprot gives
	  lots of warnings about doing the latter and advises contacting
	  GENESIS development if the debug mode is considered unavoidable

	- readcell now allows up to 30 channels on a compartment definition
	  line and allows channel names up to 100 chars in length

	- SetClock() and the setclock command now use doubles for
	  greater accuracy

	- Previous changes to setupalpha to fix singularities has been
	  removed

	- Performance of commands which interpret an element path
	   as a wildcard is improved for paths which reference an
	   explicit element.

	- An element path hash table has been implemented which 
	  improves element lookup performance, especially for models
	  with many elements at the same level in the hierarchy

	- message reimplementation
	    - there is now a unified Msg structure which replaces MsgIn
	      and MsgOut, removing the requirement for linking the two
	      structures

	    - return to a linked structure for inbound and outbound
	      messages

	    - BC to the old message structure is maintained via MsgIn and
	      MsgOut aliases for Msg and the MSGLOOP, et al. macros

	    - GetMsgInByMsgOut() and GetMsgOutByMsgIn() are now macros

	- The CallElement() function no longer takes the additional call mode
	  argument (e.g. this call is back to the pre-2.0 usage);
	  CallElementWithMode() now does the element call with the call mode
	  argument and CallElementParentObject() and CallElementVirtualObject()
	  have the same calling sequence as CallElement() allowing the new
	  call modes to be used more easily.

	- a new function CallEventActionWithTime() has been defined with
	  the same functionality as CallEventAction(), but passing the
	  time the event occured rather than assuming the current simulation
	  time.

	- CallEventActionWithTime() and CallEventAction() ensure that the
	  EVENT action is sent for active messages only

	- The -all option to deleteall (which removed all objects in
	  addition to all elements) has been removed

    - Changes to specific objects

	- SAVE2/RESTORE2 actions have been added to hh/hhlib.g for the
	  hh_channel, vgate and vdep_channel objects

	- SAVE2/RESTORE2 have been implemented for vdep_channel

	- newconn library changes; the synchan object which handled only
	  single spike in transit per synapse has been removed; synchan2
	  which handles multiple spikes has been renamed synchan; synchan2
	  is a synonym for synchan; same for hebbsynchans; synapses are now
	  handled in a more generic manner; SAVE2/RESTORE2 now save the
	  state of pending spike events and (hebbsynchan) the state of the
	  synapses; missing optional destpath argument to planardelay added

	- newconn bug fix related to changing hebb weights

	- Some core leaks in hsolve plugged

    - Graphics changes

	- Problems with pan and zoom operations under Linux due to missing
	  declarations of atof()'s return type are fixed

	- Changing the simulation clock for an xgraph now propagates down
	  to the xgraph's children; uses the new USECLOCK action

	- Autoscale problems fixed
	    - autoscaling of flat line data no longer dumps core
	    - autoscaling no longer retains old plot limits after a
	      reset and replotting of data which resulted in incorrect
	      plot ranges for subsequent autoscales

	- Hacks in Xodus code to work around compile problems when using
	  optimization with gcc result in additional compile problems
	  when using the -g debug option; should be fixed now

	- Button widgets with scripts which unmap the button's form
	  no longer remain depressed when the form is remapped

	- Symcompartments should display properly in an xcell

    - Makefile and system support changes

	- src/Makefile.dist will print an error message for a make command
	  without a target advising the user to "make all"

	- Recursive macro definitions in several makefiles which caused
	  some make programs problems have been removed

        - now supports a TMPDIR macro to set an alternate directory for
          compilation temporary files

        - CPP includes -P by default

        - LEXLIB is properly passed to code_g compile

        - Linux now links with static termcap library

	- Makefile for convert uses CC macro for compiler rather than
	  hard coded cc

	- Usermake and Libmake have been improved a little


Release 2.0.1

    This release contains changes to support the alpha release of the
    kinetics library and the kkit kinetics toolkit.  In addition
    problems which prevented compiling and installing on HP systems
    should be resolved.  It also has a number of bug fixes.  Details of
    the changes are listed below.

    - The script code backtrace printed on most errors should print
      the correct script name in all cases.

    - The -all option of the deleteall command has been removed.

    - Dependencies for install targets in all library makefiles
      have been removed.

    - Serveral fixes for Usermake and Libmake: CPP, CC, CFLAGS and
      GENINST macros are passed down from Usermake.  GENINST is a
      new macro defining the GENESIS installation directory.  The
      LDFLAGS macro in Usermake defines link options.

    - Additional instructions for workarounds of Solaris 2.4 and
      SunOS 4.1.[234] compile and link problems have been added to
      the main Makefile.

    - A TMPDIR macro has been added to the main Makefile to allow
      specification of an alternate temporary directory for making
      GENESIS.

    - A bug in the MSGOUTLOOP macro which caused problems on DEC
      Alphas has been fixed.

    - XoGetPixelFromString() now handles pixes correctly.

    - Fix for xlabel freeing unallocated memory.

    - Added special handling of first message in loading messages
      from a dump.

    - Dump files now use the new -continue option to loadtab to
      allow continuation of loading long lists of table values.

    - The element path wildcard routines will now process white
      space separated lists of path specifications and include all
      elements matching each path.  (Note that the commands still
      take a single wildcard path argument and that the path list
      must be passed in this single argument.)

    - A bug in special handling of the stdlib.h file for GNU gcc when
      optimization is on caused the stdlib.h header to be skipped if
      optimization was off.  This header is included in all cases now.
     

    - The loadtab command for loading tables from dump files has a
      -continue option to work around script language limitations on
      command line length.

    - The loadtab -xy option now takes an xdivs argument.

    - The loadtab -xy option now uses doubles to load data to preserve
      double precision.

    - Linear interpolation of table values should no longer try to
      interpolate when the input maps just before the beginning of
      the table.

    - Exp and log functions have been added to tables.

    - The setupalpha command now detects singularities and corrects
      those that can be corrected.

    - Tables now use the simulation step time if the stepsize field is
      zero.

    - Bug fix to avoid allocating a zero sized hash table in
      xtree.c

    - xcell now handles cells with symcompartments correctly.

    - xplot now handles expansion of plots greater than 200 point
      correctly.

    - The planar and volume weight and delay functions for synchans
      now accept an optional destpath argument to restrict the set
      of synchans affected by the command.

    - The protections for various newconn object fields have become
      more restrictive.

    - References to hebbsynchan2 have been removed

    - Fixes for synchan/hebbsynchan MOD message and frequency normalization
      bugs.


Release 2.0

    This file contains information about changes introduced in updates
    to GENESIS 2.0.  For information on changes from GENESIS 1.4 to
    GENESIS 2.0, please see the GENESIS Reference Manual.


Beta 2.0, patch 19

    - Additional comments about SGIs in src/Makefile.dist

    - Various changes in src/README regarding supported systems
      and SGI issues.

    - A bug in xview and xvar widgets affecting morphing of
      shapes when the value range low and high values are
      equal has been fixed.

    - Xview update problems resulting in an incorrect initial
      display are fixed.  The problem likely affected display
      during the simulation as well.

    - The xtree ADDMSGARROW problem in calling the script_add
      and script_drop scripts with incorrect arguments has been
      fixed.

    - The Usermake reference to the doc file describing how to
      compile user libraries changed to refer to the new file name.

    - Xdefaults.example has been changed to use the same resource
      values found in the fallback resources within Xodus.


Beta 2.0, patch 18

    - Copies of xshape objects no longer share the string field
      values of the copied element.  Additional code to close
      memory leaks in xshape resulted in freeing the fields from
      the copied element.

    - xcell was writing past the end of two allocated arrays.
      Now allocates the correct array sizes.

    - xdialog and xlabel now have COPY actions which copy string
      field values.  Other widgets do not yet implement COPY actions,
      but need to, since the internal Xt widget ends up being shared
      between copies, but is destroyed if any one widget is deleted.

    - NULL widget fields no longer set the corresponding Xt widget
      resource to "nil".


Beta 2.0, patch 17

    - The -coords option for x1shape objects ended up setting the
      npts field to the number of coords in the first argument
      following the -coords option name.  This no longer happens.

    - xview has been fixed so as not to change colors when the input
      data is not changing.

    - The hebsynchan object has been returned to the HebbSynchan
      implementation, however, hebbsynchan2 is still removed.

Beta 2.0, patch 16

    - xcell was not calculating the width of the soma resulting in
      the soma not appearing on the display.  xcell now calculates
      the correct screen width.

    - Additional xtree selection fixes from Upi Bhalla

    - Code has been added to xvar and xview to avoid division
      by zero if the low and high limit on input values are the
      same.  In these cases, the color defined by the low limit
      shape is used.

    - xpixflags is now the official name for the pixflags conversion
      command.  The old pixflags command name is retained for BC.

    - The xpixflags command now uses the getopt() routines and its
      usage message documents the negation operator as a tilde(~).

    - A bug in xpixflags returning static storage after printing a
      usage statement has been fixed to allocate the return value.

    - Core leaks in setting of string fields in various widgets have
      been patched.

    - Added a -nox option to the genesis command line which results
      in Xodus not being initialized.  A related command, xgetstat,
      has been added which returns 0 if Xodus is not properly init-
      ialized.

    - The xon command has been removed.  The xinit command now maps
      to a message indcating that xinit is no longer needed.  (We
      wouldn't want scripts accidently calling the X11 xinit command!)

    - A problem with X1compat handling multiple arguments to the x1shape
      -coords create command option has been fixed.

    - convert now removes the xinit command when converting scripts.

    - Changes from Erik DeSchutter to handle INJECT messages in hsolve
      chanmode 0/1.

    - The hebbsynchan object is now using the HebbSynchan2 implementation
      and there is no longer a hebbsynchan2 object.

    - Deleting an element while it is the cwe will now immediately ce
      to the root element.

    - The Xdefaults.example file with values suitable for SGI systems
      has been added.  It installs in the startup directory.

    - Libmake has been modified to describe that use of the FUNCTIONS
      file is no longer necessary, but also provides instructions for
      setting up the Makefile to use an old FUNCTIONS file is desired.

    - Usermake has been updated to include the oldconn library by
      default.

    - A bug in code_g resulting the hashfunc command setting the return
      type of the function to void even when another return type is
      given is fixed.

    - readcell will now use full compartment volumes for Ca_concen if
      the thick field is less or equal to zero or greater than the
      compartment diameter.


Beta 2.0, patch 15
Sat Jul 29 11:54:30 PDT 1995

    - A bug in gcc 2.6.3 stdlib.h causes a number of function type
      definitions to be redeclared with incompatible types.  A work
      around had been implemented in the affected files.

    - Clean up of memory allocation of string resources.

    - Colorscale colors are no longer freed when using a readonly
      visual.

    - Xshapes should correctly set fg colors.

    - Various memory leak fixes.

    - The execute command has been removed.

    - The affweight and affdelay commands have been added to the oldconn
      library.  These command should be used in lieu of "execute AffWeight"
      and "execute AffDelay".

    - The compartment and symcompartment object now initialize default
      values for Rm and Cm to 1 to avoid divide by zero FPE errors for
      uninitialized compartments.


Beta 2.0, patch 14
Fri Jul 21 14:58:42 PDT 1995

	- Minor changes for compiling under HPUX.  There are still
	  problems with XODUS on this platform.

	- The CPG tutorial sersion using xvar objects should now
	  display properly.

	- Additional changes for xtree drag and drop operations have
	  been made.

	- The -coords option used in creating xshapes will now accept
	  the coordinate list as multiple arguments.  Long coordinate
	  lists should be broken into multiple arguments to avoid
	  command argument length limitations.  The xstartup.g script
	  has been updated accordingly and convert no longer combines
	  multiple coordinate arguments into a single argument.

	- The Ca_shell object has been merged into Ca_concen and the
	  dia field from Ca_shell is called thick in Ca_concens.

	- A bug in volumeconnect's handling of mask coordinate values has
	  been fixed.

	- The floatformat command no longer accepts %d as a valid format,
	  which leaves %g and %f as the only valid formats.

	- The echo command now verifies that the -format option value is
	  a single %s conversion.  Other conversions or multiple conversions
	  will be rejected.

	- Lookup of C function addresses for functions not identified in
	  a library startup script no longer fail under Linux.

	- A arguments for a script named on the genesis command line are
	  correctly passed to the executing script.

	- Interupting execution of the .simrc or command line script will
	  now place the user at the SLI prompt instead of exiting GENESIS.

	- GENESIS no longer dumps core when given an incorrect syntax for
	  indexing an array field of an element in setfield, etc.

	- Memory leaks which occured on reset have been patched.

	- Unknown channels which appear in a cell file now produce an
	  appropriate error message from readcell.

	- Pressing buttons while another script is in progress no longer
	  results in unexpected script behaviour (e.g. widgets no longer 
	  appear in the wrong form, elements which are expected to exist
	  will, etc.).

	- Linux make should no longer perform endless recursions in the
	  oldconn directory.


Beta 2.0, patch 13
Sat Jul  8 13:33:28 PDT 1995

	- X11R3 support in src/Makefile.dist has been removed as Xodus 2
	  will not compile under anything less than X11R4.

	- xcell fixes: single compartment cells now work correctly, auto
	  calculation of diamax and diamin works for all autodia settings,
	  settings for path/field/fieldpath fields no longer require a reset
	  to take effect (inconsistent settings of these fields will be
	  ignored).

	- Multiple redraws of pixes resulting from setting pix fields have
	  been reduced.

	- The colorscale will now default to half black and half white rather
	  than requiring that a table be loaded.

	- xview now supports autoscaling as in Xodus 1

	- xview core dump which would sometimes happen at reset have been
	  fixed.

	- drag/drop of xtree pixes no longer cause a core dump.

	- X1compat will correctly initialize diarange and autodia fields
	  of x1cells to values consistent with Xodus 1.

	- The showalias command is now called showcommand.

	- Indirect fields now call the correct SET actions.

	- Callbacks to script commands which return a NULL string will
	  no longer interrupt script execution with the message "CastToInt:
	  NULL string".


Beta 2.0, patch 12
Fri Jun 23 18:02:44 PDT 1995

	- The problems associated with Netkit.g and other xtree related scripts
	  on SunOS and SGI-IRIX 5.2 should be fixed.

	- Warning note to set the path field of xtree, xcell and xview elements
	  as absolute path names will appear only if the path field has been 
	  set relatively.

	- Spurious error messages which occur when setting the path, field
	  and fieldpath fields of xcell have been fixed.  Changes to these
	  fields will not take effect until the next call to reset (or to
	  an explicit call to the RESET action on the xcell).

	- xcell will now accept character equivalents to its numeric
	  settings for autodia as originally intended (e.g. 0 = f, 1 = s,
	  2 = t, 3 = c).

	- ReadCell now allows the user to build a cell under a neutral if it
	  already exists and has no children.

	- A problem in Makefile.dist which caused problems with FreeBSD's
	  version of make has been fixed.

	- The cell_sheet command no longer makes a direct call to
	  CopyConnections() in the connection compatibility library.
	  It should now be possible to compile GENESIS without the
	  connection compatibility library (the default in Usermake).


Beta 2.0, patch 11
Fri Jun 16 15:52:40 PDT 1995

	- A number of enhancements have been made to provide FreeBSD 
	  compatibility to genesis. Thanks are due to Rich Murphy for all 
	  his FreeBSD specific enhancements, which have been folded in to 
	  the distribution.

	- The xcell, xvar and the xview Xodus elements have a new color 
	  calculation scheme that avoids arithmetic overflows. 

	- Changes to the xtree widget to cleanly interpret and perform tasks 
	  based on user-clicks have been implemented.

	- Additional clean-ups and fixes for resource converters in Xodus. This
	  should address some problems related to complaints on inability to
	  allocate certain specified colors.

	- A new warning message explains to the user that the path field for
	  xview, xtree and xcell Xodus elements should contain an absolute pathname,
	  if it does not find the elements specified in its path.

	- xcell now correctly displays 2-compartmental cells.

	- The Hodgkin-Huxley channels have code that defensively avoids 
	  exponentiation of huge numbers and consequent overflows.

	- Genesis will no longer exit when any command is piped through an
	  external command (e.g more) and it is interrupted.


Beta 2.0, patch 10
Mon Jun 12 16:32:24 PDT 1995

    - Fixes to additional problems with Xodus resource converters.
      This will hopefully address a problem on DEC Alpha's where
      the xcmds.g TestSuite script complains that it can't convert
      certain xaxis resources and later dumps core.

    - The xtext widget which is used for displaying help information
      in various tutorials will now correctly display text containing
      tab characters.

    - A new GENESIS command line option -defaultcolor will cause
      GENESIS to use the display's default colormap, even if the
      default visual is readonly.  The net result is that colorscale
      colors will be shared among multiple GENESIS processes, but
      GENESIS will fail to allocate a colorscale if the default
      colortable is full.

    - A problem in specifying resource values for the background and
      border pixels for windows has been fixed.  This may fix the
      problems in running GENESIS on SGI which default to a TrueColor
      visual.  The -defaultcolor option might also be usedful in
      working around the SGI TrueColor problem.

    - Toggling overlays on and off in the Neuron tutorial should no
      longer result in a core dump.  This problem which manifested
      itself under AIX on an IBM RS6000 machine is very general and
      could have happened in any case where elements are deleted and
      reset or resched is not run before stepping the simulation.


Beta 2.0, patch 9
Fri Jun  2 17:24:00 PDT 1995

    - Deficiencies in Xodus' resource converter code have been fixed.
      This may fix reported problems with the CPG tutorial where on
      SGI's and some Linux systems the cells were drawn as arrows
      rather than filled and on other Linux systems where some or
      all of the shapes representing connections did not appear.

    - Bug fixes to the hsolve object.  An implicit RESET of nernst
      elements was causing a divide by zero error on DEC Alphas.
      Error checking code has also been added for the [XYZ]power
      values of tabchannels (within hsolve).


Beta 2.0, patch 8
Tue May 30 18:18:02 PDT 1995

    - Bug fix for Makefile.alpha which resulted in a sh syntax error.


Beta 2.0, patch 7
Fri May 26 10:29:09 PDT 1995

    - Additional problems in updating xdialog text when uncovered
      by an obsuring widget have been fixed.

    - The convert progrem now generates correct code in converting
      the "set -env" command.

    - An error in the patch 6 changes to disk_in to support the
      1.4 xfileview functionality has been fixed.   This error
      caused compiler errors under Linux (and probably anywhere
      else using gcc) and would probably corrupt the heap on
      other systems.

    - The @node syntax for remote commands in parallel GENESIS
      now allows commas to appear in the node specification.


Beta 2.0, patch 6
Wed May 17 13:22:34 PDT 1995

    - A bug introduced in patch 5 affecting handling of Xodus geometry
      values has been fixed.

    - Makefile.dist now passes the RANLIB macro properly when "make
      install" is run.

    - The xview and disk_in objects have been modified so that together
      they can support functionality equivalent to the GENESIS 1.4
      xfileview widget.

    - The xplot object now has an ADDPTS action which provides the same
      functionality as the GENESIS 1.4 xaddpts command.

    - The hsolve object now issues an appropriate error message when
      the path field does not match any elements.

    - Indexing outside the bounds of the string in a substring command
      is detected and reported as an error.

    - A bug in checking the indexing of pointer element fields resulting
      in the message "invalid array indexing" for valid uses of indexing
      a pointer value has been fixed.


Beta 2.0, patch 5
Mon May  8 22:45:58 PDT 1995

    - Changes to Makefile.Linux supporting the setting of the YACC,
      LEX and LEXLIB macros in the main Makefile which were omitted
      in the previous patch have been added in this one.

    - Xodus will no longer dump core when trying to create an xform
      after failing to initialize Xodus.

    - GENESIS no longer dumps core when the command "showobject xform"
      is given.

    - Additional modifications have been made to the handling of X11
      visuals at Xodus initialization.  Xodus should no longer
      produce an X protocol error on displays which default to a
      TrueColor visual.

    - The -holerange and -offset options to gen3dmsg now work as
      advertised.

    - The cmd@node syntax for parallel simulations will now accept
      the same syntax for the node as other command arguments.  This
      allows alot of freedom in specifying the node spec (e.g.

	echo@{nodespec}
	echo@{onenode},{anothernode}


Beta 2.0, patch 4
Fri Apr 28 12:40:54 PDT 1995

    NOTICE
    
    The changes in this patch to Makefile.dist make it necessary for
    all users to copy Makefile.dist to Makefile and reconfigure the
    Makefile.

    - As of this patch, all change notices will appear in this file.

    - A bug in the handling of the command@node syntax for calling a
      script function remotely has been fixed.

    - A bug in the convert program which would have caused conversion
      of string concatentaion using + to use the new @ operator to
      fail has been fixed.  The bug could also have manifested itself
      in a core dump on some systems.

    - Two new command line options are now available.  The -execdir
      option takes the following argument as a directory path into
      which GENESIS will change before startup.  The -nice options
      takes the following argument as a nice value to run GENESIS
      at.  These options are used by the parallel library in starting
      remote GENESIS nodes.

    - The script language yacc and lex definition files have been
      updated to work properly with the GNU bison and flex programs
      which are used on Linux systems.  This should also allow systems
      without yacc or lex to obtain and use the GNU programs.

    - A problem in initializing plot colors from xgraph PLOT messages
      which resulted in black plots, color name conversion error messages
      and core dumps when using overlay mode has been fixed.

    - Various updates to suggested settings in Makefile.dist have been
      made affecting Solaris 2.4 w/gcc, DEC alpha, SGI and Linux systems.
      There are also new macro settings to allow use of other yacc and
      lex programs like GNU bison and flex.

    - Xodus/Makefile now properly passes the RANLIB macro value to the
      Xodus subdirectory Makefiles when "make install" is run.


Beta 2.0, patch 3
Thu Apr 13 14:05:59 PDT 1995

    - src/Makefile.dist suggested settings for MACHINE=alpha have been
      changed.

    - Adding -DGETOPT_PROBLEM to CFLAGS in src/Makefile will avoid
      problems with differences between the GENESIS getopt()
      implementation and the standard library version.  If GENESIS will
      not compile due to errors related to the getopt() function or the
      optopt variable add -DGETOPT_PROBLEM to CFLAGS.  This is known to
      be a problem on some alpha machines.

    - A problem where xgraphs using the X message for phase plots would
      not display anything unless resized or autoscaled has been fixed.
      This problem is likely to have caused the same symptoms when no X
      message is present.

    - Bugs in the getsyndest and getsynsrc commands which caused GENESIS
      to hang on Linux systems after finishing the command have been fixed.

    - The include of search.h in convert/mapcommand.c which prevented a
      successful compilation of the convert program on some Linux systems
      has been removed.

    - The convert program now handles conversion of set -env commands
      better.  Code is generated which adds the named field if it
      doesn't already exist.

    - The Scripts/X1compat directory is now added by default to the
      SIMPATH in the .simrc file.

    - Plot colors and labels will no longer revert to the values given
      in the PLOT message on a reset.  For example, if a plot color is
      changed by setting the fg field of the xplot, a reset doesn't 
      change it back to what the PLOT message color value.

    - The cell file *set_compt_param command allows a script variable to
      be used to set the compartment parameter.  The script variable may
      be named directly or placed in curly braces as in SLI scripts.

    - Functions supporting the old save and restore commands which
      reference the system dependent etext, edata, etc. values have
      been removed.  RS6000/AIX machines should compile now.

    - An extraneous argument to both the XFillRectangle() and
      XDrawSegments() functions in XoDraw.c have been removed.

    - In Xodus/Xo/XoPS.c calls to XQueryFont incorrectly passing a GC
      rather than a GID have been fixed.

    - Additional problems with forms requiring placement by the
      window manager have been fixed.

    - Preprocessed output from the yacc and lex programs will not be
      provided any longer.  Some systems have differing implementations
      for these programs and fail at the link stage when using the
      provided yacc and lex output.  The patch provides an update to
      the yacc and lex input files which will cause them to be
      reprocessed.


Beta 2.0, patch 2
Fri Apr  7 21:56:32 PDT 1995

    NOTICE

    Starting with this patch, the standard distribution version
    of src/Makefile will appear as src/Makefile.dist.  This is
    necessary as src/Makefile is customized by the user and a
    patch to this file is bound to fail at some point.

    Fixes

    - GENESIS 2.0 now compiles correctly on IBM rs6000 systems
      running AIX.  There is now a MACHINE=aix option in
      src/Makefile.dist and a src/Makefile.aix.  Check the CFLAGS
      options in src/Makefile.dist which are necessary for things
      to work.

    - The -lXaw in the XLIBS line in src/Makefile.dist has been
      removed.  This caused at least one system to issue errors
      for multiply defined symbols.  Xodus no longer uses any
      of the Athena widgets.

    - Graph axes now display single character titles correctly.

    - A problem with widgets borders which caused in some instances
      the borders not to display along the full length and height of
      the widget has been fixed.

    - The bg field of dialogs now set the entire background of the
      dialog rather than a small area near the dialog's borders.

    - A problem with the fvwm window manager which prevented any
      keyboard input to widgets has been fixed.

    - A bug which caused problems doing drag and drop operations on
      Tree widgets has been fixed.

    - Form widgets are now sized such that the width and height
      given in a geometry string defined the total size of the
      form including borders.  Previously, the width and height
      determined the size of the usable form space inside the
      borders.

    - The hsolve element now initializes is Vm values at reset from
      compartment initVm values rather than Em values.  It should
      no longer be necessary to use the Vm_reset flag to initialize
      an hsolve element.  NOTE: the Vm_reset field will be removed
      in the near future.

    - A problem where genesis and code_g were unable to find their
      executable files at startup when . was not on the path and a
      relative path was used has been fixed.

    - Replacement functions for the index(), rindex() and bcopy()
      functions in sys/system_deps.c compiled in for most SYSV
      systems where written using ANSI C syntax.  They've been
      replaced with K&R C code.

    - A problem with the scaling of difpool elements in readcell
      has been fixed.

    Other Changes

    - Several of the system specific src/Makefile.dist CFLAGS
      settings didn't include -O which has been added as a default.

    - Dialogs now allow use of the mouse to position the text cursor.


Beta 2.0, patch 1

    Fixes

    - Problems preventing compilation of sim_main.c on some SYSV
      systems due to a BSD specific library function call (setlinebuf)
      has been fixed.

    - A bug in sim_main.c in calling the simrc script at startup
      has been fixed.  The bug affects all systems, but only caused
      problems when using gcc under Solaris.

    - Explicit uses of cc in the sys/Makefile have been changed to
      use the CC macro defined in src/Makefile.  This fixes a problem
      on systems using a C compiler which is not named cc.

    - Version information has been updated to reflect the Beta
      release version.

    Other Changes

    - The convert.man page has been updated to describe the
      -noX1compat option to convert.  This is installed under
      man/man1 on a make install.


Beta 2.0

    Known Problems

    An asterix indicates that the problem should be fixed in the
    first set of patches.

    *   - Under Solaris sim/sim_main.c does not compile because the
	  setlinebuf() function isn't in the standard C library.

    *   - Systems using gcc or any other compiler not named cc will
	  fail in compiling the code generator commands in sys as the
	  makefile uses a hardcoded cc command.  This problem may be
	  worked around by linking gcc (for example) to cc.

	- Under Linux, the convert command may fail to compile as the
	  header file search.h used in mapcommand.c cannot be found.
	  This should not affect the compilation of GENESIS.

	- The GENESIS graphical interface does not run properly on a
	  StaticGrey visual.  The xdpyinfo command is useful in finding
	  out what types of visuals your X-Windows system supports.
