README file for VMD 1.3
                       -----------------------

What is VMD?            See also http://www.ks.uiuc.edu/Research/vmd/
---------------------------------------------------------------------
  VMD is designed for the visualization and analysis of biological
systems such as proteins, nucleic acids, lipid bilayer assemblies,
etc.  It may be used to view more general molecules, as VMD can read
standard Protein Data Bank (PDB) files and display the contained
structure.  VMD provides a wide variety of methods for rendering and
coloring a molecule: simple points and lines, CPK spheres and
cylinders, licorice bonds, backbone tubes and ribbons, and others.
VMD can be used to animate and analyze the trajectory of a molecular
dynamics (MD) simulation.  In particular, VMD can act as a graphical
front end for an external MD program by displaying and animating a
molecule undergoing simulation on a remote computer.

The program has many features, which include:
  o No limit on the number of molecules, atoms, residues or
    number of animation frames, except available memory.

  o Many molecular rendering and coloring methods.

  o Stereo display capability.

  o Extensive atom selection syntax for choosing subsets of atoms for
    display (includes boolean operators, regular expressions, and more).

  o Integration with the program 'Babel' which allows VMD to read many
    molecular data file formats.  Even without the use of Babel,
    VMD can read PDB files, as well as CHARMM- and X-PLOR compatible
    binary DCD files and X-PLOR compatible PSF files.

  o Ability to write the current image to a file  which may be 
    processed by a number of popular raytracing and image rendering
    packages, including POV-Ray, Rayshade, Raster3D, and Radiance.

  o Extensive graphical and text-based user interfaces, which use the
    Tcl package to provide full scripting capabilities.

  o Extensions to the Tcl language which enable researchers to write
    their own routines for molecular analysis.

  o Modular, extensible source code using an object-oriented design in
    C++, with a Programmer's Guide describing the source code structure.

  o Integration with the program NAMD, a fast, parallel, and scalable
    molecular dynamics program developed in conjunction with VMD
    in the Theoretical Biophysics Group at the University of Illinois.
    See the NAMD WWW home page for more info:  
      http://www.ks.uiuc.edu/Research/namd

    VMD can be used to set up and concurrently display a MD simulation
    using NAMD.  The two programs, along with the intermediary communcations 
    package (called MDComm) constitute the 'MDScope' environment.  


What's new in VMD 1.3?
----------------------
  o Extensive audit of VMD 1.3 documentation.
  o Updates to VMD help system.
  o MSVC related source changes (type cast warning fixes)
  o Updated internal VMD URL for the PDB to point to the RCSB sites since
    the BNL sites will apparently be closing in June 1999.
  o Eliminated Tokenize code from build, no longer needed.
  o Eliminated unused mouse handling code.
  o Eliminated unused make targets from configure script
  o Misc small fixes to command code, including "wait" command.
  o Eliminated "+C" flag from POV Ray renderer command line.
  o Fixes to OpenGL Display Device code for window position and size.
    (this is also related to fixes required for SGI stereo extensions..)
  o Rewrote sections of the tube representation code to improve the
    end-to-end matchup of cylinders, and computation speed.
  o Added missing cylinder cap code for Tachyon renderer output.

Changes for VMD 1.3b2
---------------------
  o Eliminated some of the storage used by the MolAtom class, new code
    uses about 56 bytes less storage per-atom than the old code did,
    yielding a 10-15% decrease in overall memory use when viewing a
    175,000 atom system with VMD.
  o Revised VMD startup messages and title screen slightly.
  o Updated configure script to generate new code in the 'make install'
    targets of the generated makefile.  VMD now installs the Announcement,
    README, and LICENSE into the final distribution directory.  This should
    permanently fix the issue with the RPM building on linux as well.
  o Added Win32 targets to 'make_distrib', and 'use', including additional
    handling of ".exe" extensions and such.
  o Changed default Phong exponent on Tachyon exports to 60.0 instead of
    30.0, should look a bit shinier now.
  o Found bug causing incorrect export of some kinds of geometry to the
    file renderers.  File exporters were not getting any geometry made
    of DTRICOLOR primitives, they were being silently dropped.  A further
    difficulty is that most of the external renderers cannot handle this
    kind of coloring on triangles.  An initial fix is in place now, but
    the ability to render this primitive nicely is higly dependent on
    the external renderer.  POV-Ray is an example of a renderer that is
    incapable (to my knowledge) of rendering DTRICOLOR as it is meant to
    be rendered.  This feature could be added to Tachyon, but not at the
    present time.
  o More changes to Alpha compilation flags, runs better with -misalign,
    although this is just a temporary step until we fix the VMD display
    list code.
  o Modified our local copy of Stride, and built a Windows binary of it.
  o Modified our local copy of Surf, and built a Windows binary of it.
  o First runnable binary built on Digital Unix using the "cxx" compiler,
    successfully compiled and ran the Mesa version of VMD.  The OpenGL
    version compiled, but got "stuck" when it ran.  Now just a few more
    things to fix in the VMD display list code, and we may have something
    for people to try.
  o Many more fixes to DEC Alpha compilation flags (cxx based builds) due to
    various problems with templates, presently using -tlocal to see if we can
    get a successful build that runs.
  o Added a "WIN32" configuration to the configure script for the purposes
    of generating the correct config.h output, and in case we want to do builds
    using the Cygwin gcc-based tools instead of MSVC.
  o Successful build and run of minimal text-only VMD with MSVC 6.0 and
    while sharing source tree with Unix.  Still has a stdio / Ctrl-Z / EOF
    bug in the text based UI however.
  o Filed a bug report with GNU for flex 2.5.4a, the generated output
    should protect an inclusion of unistd.h with an ifdef of some kind.
  o Another round of MSVC related fixes, several of which are
    specific to MSVC 6.0 (too much detail to list)
  o Changed configure script for new template source filenames.
  o Renamed all of the template-related ".c" files to "xyzTPL.h" in order
    to permanently cure filesystem name space collisions on Windows.
    This involved changes to numerous headers, RCS, etc.
    Also changed default behaviour the of ifdefed includes for these
    renamed files since renaming them had big effects on several platforms.
  o First Merge of MSVC build directories with Unix build directories
  o Upgraded MSVC project files to work for MSVC version 6.0


Changes for VMD 1.3b1
---------------------
  o Upgraded VMD version of Mesa to 3.0 from 2.6
  o Upgraded VMD version of Tcl/Tk/TclX to 8.0.4 from 8.0p2
  o Several changes to configure script /wrt IRIX6 builds.
  o Rebuilt local IRIX6 tcl/tk/tclx libs with "-G 0" to avoid gp_overflow 
    errors at link time.
  o Rebuilt surf_IRIX6, and stride_IRIX6 for -mips3
  o IRIX6 configuration now uses -mips3 instead of -mips4
  o Rebuilt local libraries for IRIX6 binary distribution, old ones forced
    the resulting executable to be mips4-only...
  o Bug reported in XYZ file reading (existed in previous revs too..)
  o Bug reported in CRD file reading (existed in previous revs too..)
  o Analysis of 1999 VMD User Survey Results / re-send to unresponsive users
  o LICENSE file missing from Linux RPM distribution, fixing.
  o Identified a bug in VMD's scripting language and/or docs.  The coloring
    routines can't do "by resid".  This is either a bug, or an incomplete
    implementation.  Still under investigation.
  o May have identified a long standing rendering bug in VMD, likely incorrect
    display of specular highlights (phong equation) due to a bad
    transformation stack.  Looks incorrect in current OpenGL version.
    Still under investigation.
  o Identified a bug in the OpenGL version tracker display/transform code.
  o Identified a bug in the OpenGL version Cave input devices (kbd, trackers)
  o Identified 64-bit portability bugs in VMD's rendering code.
  o Updated many documentation items to be correct for VMD 1.3.
  o Added information on new target platforms in web documentation.
  o Fixed IRIX6 binary distribution, was missing stride and surf binaries.
  o Fixed permissions of OSF1 stride and surf binaries for distributions.
  o VMD successfully communicates with VRPN based trackers.
  o Additional work on fixing VMD for compilation with xlC on AIX 4.2.


Changes for VMD 1.3a2
---------------------
  o Fixed flags in HPUX configur.options files after updating configure script
  o Fixed a few small bugs in the configure script, with respect to the
   ACC, GCC, KCC, and EGCS build options, and with the HPUX10 build
   configurations.
  o CAVE option is now part of all IRIX builds (both GL and OpenGL) by default.
  o Eliminated double linkage of xforms libraries, and a UIUC
    local item in the configure script.
  o Improved all IRIX builds, eliminated unnecessary libraries from linking,
    especially the old libmalloc.
  o Improved Tracker List, so that user can differentiate between
    VRPN trackers, and the old UNC trackers.
  o IRIX6 builds of VMD using OpenGL and the Cave.
  o Fixed configure script for OpenGL builds of VMD for the Cave.
  o Updated all VMD Tracker classes, fixed name collisions with VRPN library
  o First rev of VRPN based VR tracker/button/force support code for VMD.
  o Updates to Cave tracker code for keeping up with VRPN related changes.
  o Updates to Cave rendering code, first rev to compile under both GL and 
    OpenGL.
  o Numerous fixes for compiling with xlC on AIX 4.2, still more left to go.
  o Small IRIX6 code fixes.

Changes for VMD 1.3a1
---------------------
  o The production release of VMD 1.3 will be the last version that provides
    support for the old GL graphics hardware directly, future releases will
    only support OpenGL.  
  o VMD now uses platform independent internal code for the Render->Snapshot
    feature on the OpenGL builds.  The new code saves images in PPM format
    on OpenGL binaries, and SGI RGB format for GL binaries.  
  o VMD now has a user configurable default image viewer.
  o The VMD measure features are now implemented internally eliminating
    the need for three external LASSP programs which were previously required.
  o Some small performance enhancements to part of the picking code.
  o First revision of VMD to include Win32 related portability changes,
    the Win32 port is not ready for alpha or beta release yet, but the
    current Win32 related source code changes are included in this release.
  o Ported to Solaris x86 (binaries provided for Solaris 7 x86)
  o Additional porting work for DEC Alpha, using DEC's compilers as well as gcc.
  o Improvements to VMD build configurations on several platforms.
 
Known bugs
----------
  Please visit the VMD web site for information on known bugs, 
  workarounds, and fixes:
      http://www.ks.uiuc.edu/Research/vmd/

Cost and Availability
---------------------
  VMD, NAMD, and the entire MDScope environment are part of an ongoing
project within the Theoretical Biophysics group to help provide free,
effective tools (with source code) for molecular dynamics studies in
structural biology.  For more information, see
http://www.ks.uiuc.edu/Research/MDScope/.  This project is funded by
the National Institutes of Health (grant number PHS 5 P41 RR05969-04)
and the Roy J. Carver Charitable Trust.

Disclaimer and Copyright
------------------------
  VMD is Copyright (c) 1995-1999 Theoretical Biophysics Group and
the Board of Trustees of the University of Illinois

Portions of VMD code are Copyright (c) 1997-1998 Andrew Dalke

The terms for using, copying, modifying, and distributing VMD are
specified in the file LICENSE. If you use VMD in a way you think is
interesting or novel, we would like to know about it.

Please take  a few minutes to fill out a registration form at
http://www.ks.uiuc.edu/Research/vmd/VMDregistration.html
if you are going to use VMD. 

The authors request that any published work which utilizes VMD 
includes a reference to the VMD web page:

  http://www.ks.uiuc.edu/Research/vmd/

and/or the following reference:

  Humphrey, W., Dalke, A. and Schulten, K., "VMD - Visual Molecular
  Dynamics", J. Molec. Graphics, 1996, vol. 14, pp. 33-38.


Some of the code and executables used by VMD have different
restrictions.  They are:

1) STRIDE, the program used for secondary structure calculation, is
   free to both academic and commercial sites provided that STRIDE will
   not be a part of a package sold for money.  The use of STRIDE in
   commercial packages is not allowed without a prior written
   commercial license agreement.  See the Stride WWW page at:
     http://www.embl-heidelberg.de/stride/stride_info.html

2) The source code for SURF is copyrighted by the original author,
   Amitabh Varshney, and the University of North Carolina at Chapel Hill.
   Permission to use, copy, modify, and distribute this software and its
   documentation for educational, research, and non-profit purposes is
   hereby granted, provided this notice, all the source files, and the
   name(s) of the original author(s) appear in all such copies.
   
   BECAUSE THE CODE IS PROVIDED FREE OF CHARGE, IT IS PROVIDED "AS IS" AND
   WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED.
   
   This software was developed and is made available for public use with
   the support of the National Institutes of Health, National Center for
   Research Resources under grant RR02170.
   
    ftp://ftp.cs.unc.edu/pub/projects/GRIP/SURF/surf.tar.Z 

3) The perl script to retrived web documents, url_get, was written by
   Jack Lund at the University of Texas as Austin.  There appear to be
   no restrictions on its use.

4) Several parts of the GNU C++ class library are used in VMD,
   including the String and Regex classes, alloca, and librx regular
   expression library.  As per the GNU Library General Public License
   v. 2, the modified code is available as part of the general VMD source
   distribution and may be freely used and altered.


Feedback
--------
  We would like to know who is using our software both for our own
knowledge and to support our funding.  If you find VMD useful or
want to make comments, please fill out our on-line feedback form at
http://www.ks.uiuc.edu/Research/vmd/VMDfeedback.html .


Documentation
-------------
  Three postscript documentation files are available for VMD which
describe how to install, use, and modify VMD.  One, the installation
guide, is contained in the VMD distribution in the file doc/ig.ps .
The other two, the User's Guide and Programmer's Guide are available
independently from the VMD distribution directory as ug.ps and
pg.ps .

  A quick help file in HTML format, 'vmd_help.html' is also available,
in the 'data' directory of the distribution.  This file may be viewed
by any HTML viewer, and is used to provide on-line help for VMD when
it is running.  This file is outdated and does not contain information
beyond version 1.0 .

For the latest information on VMD, please see the VMD WWW home page:
             http://www.ks.uiuc.edu/Research/vmd/
This page contains links to HTML versions of all three VMD manuals
listed above, and info on the latest release of the program.  A
brief VMD FAQ is also available, and can be found either by looking
at the VMD home page, or directly via the URL:
         http://www.ks.uiuc.edu/Research/vmd/vmd_faq.html

Installation
------------

Detailed instructions for compiling this version of VMD can be found
in the installation guide, ig.ps.  For quick installation of the
binary distribution (for IRIX, HPUX, Solaris, and Linux), do the following:

  1) uncompress and untar the distribution into a working directory.
     In this working directory, there are several subdirectories such 
     as bin, src, doc, data, as well as this README and a configure script.  
     Change to this working directory after the unpacking is complete.

  2) Edit the file 'configure'; change the values for
     the $install_library_dir and $install_bin_dir to a directory in 
     which vmd data files and executables should be installed:

     $install_bin_dir is the location of the startup script 'vmd'.  
     It should be located in the path of users interested in running VMD.

     $install_library_dir is the location of all other VMD files.  
     This included the binary and helper scripts.  It should not be 
     in the path.

  3) The proper Makefile must be generated based on these
     configuration variables.  This is done by running "./configure" .

  4) After configuration is complete, cd to the src directory,
     and type "make install".  This will install VMD in the two
     directories listed above.  Note that running "make install" 
     twice will print error messages because you are attempting to 
     overwrite some read-only files.  This should be fine.

  5) When installed, type 'vmd' to start (make sure the
     $install_bin_dir directory is in your path).


Required Libraries
------------------
  VMD requires several libraries and programs for various of its functions.
In particular, it uses GL or OpenGL based 3-D rendering, and will require
that you have the appropriate GL or OpenGL libraries on your system.  
Other programs are required by some of VMD's optional features.
Please visit the VMD web site for more information:
  http://www.ks.uiuc.edu/Research/vmd/


For problems, questions, or suggestions, send e-mail to 'vmd@ks.uiuc.edu'.

	A. Dalke, J. Gullingsrud, W. Humphrey, 
        S. Izrailev, J. Stone, J. Ulrich
	Theoretical Biophysics Group
	University of Illinois and Beckman Institute
	405 N. Matthews
	Urbana, IL  61801
	TBG WWW: http://www.ks.uiuc.edu/
	VMD WWW: http://www.ks.uiuc.edu/Research/vmd/


General README for VMD; last modified April 2, 1999 by John Stone