ChangeLog 1
[08/10/93] RS molecule.c
Solved problem with protein hydrogen bonding,
in PDB files
containing both protein and nucleic acid
sequences.
[07/10/93] RS outfile.c
Corrected problem with compressed postscript
output using
"colour" instead of "color"
resulting in monochrome output.
[06/10/93] RS abstree.c rasmol.c render.c
Moved #include <stdlib.h> inside the
#ifdef IBMPC to avoid
compilation errors on SUN 386is without
stdlib.h!
[05/10/93] RS command.c abstree.c
Added support for negative residue numbers when
specifing
single residue numbers and ranges of residues,
and allow the
use of negative numbers in RasMol conditional
expressions.
[05/10/93] RS rasmol.c molecule.h
Altered the main loop of RasMol and the way
char arrays are
initialised in molecule.h to avoid compilation
warnings with
SGI's cc compiler. Thanks to Lachlan Bell
(lhb@seqnet.dl..).
[04/10/93] RS Makefile Imakefile
Added a comment to the Makefile to the effect
that the Xinput
library is linked using -lXi instead of
-lXinput on SGIs.
[01/10/93] RS molecule.c render.c
Modified bug in molecule.c that only created
new groups or
chains at changes in PDB residue serial
numbers. This caused
ribbon problems on some GAP3.pdb. Thanks to
Andrew Coulson.
[29/09/93] RS molecule.c
Changed method for determining hydrogen bond
offests for the
RasMol "colour hbond type" command to
not use the residue
serial numbers found in the PDB file.
[29/09/93] RS molecule.c molecule.h render.c
Recorded breaks in protein backbone caused by
large alpha
carbon separation to avoid drawing ribbon over
chain breaks.
[27/09/93] RS x11win.c
Improved the scroll bars to allow the `button'
to be dragged
by moving the mouse whilst a button is
depressed.
[27/09/93] RS molecule.c
Added a flag to indicate the source of the
current secondary
structure assignment used by the program, i.e
PDB vs DSSP.
[27/09/93] RS rasmol.c raswin.c raswin.rc raswin.idm
command.c transfor.c
Replaced "Ball & Wire" with
"Ribbons" on the display menu
and improved the way representations are
enabled and disabled.
[24/09/93] RS molecule.c tokens.h command.c
Modified LoadPDBMolecule to read the secondary
structure
assignment records (HELIX and SHEET) and use
these as default
secondary structure assignments when they are
present. Added
the command "structure" to force the
use of DSSP definitions.
[24/09/93] RS molecule.c
Optimised Implementation of Kabsch and Sander's
algorithm to
determine beta sheet secondary structures,
reducing time to
analyse GLS2 from over two hours to 7mins on a
sun4.
[23/09/93] RS abstree.c
Modified EvaluateProperty to test amino acid
properties by
using an array containing a bitvector of
properties for each
amino acid. This is both faster and easier to
maintain.
[23/09/93] RS molecule.c command.c tokens.h abstree.c
abstree.h
Completed prototype beta sheet secondary
structure
determination based upon the Kabsch and
Sander's algorithm.
Added the predicate "sheet" for amino
acids in ladders.
[23/09/93] RS molecule.c molecule.h transfor.c
abstree.c
Added pyrrolidine carboxylic acid and
hydroxyproline (and
ASX and GLX) to the list of recognised amino
acids for
determining hydrogen bonding and structure
determination.
[22/09/93] RS molecule.c molecule.h tokens.h command.c
render.c
abstree.c
Corrected bug with RasMol that caused proteins
with actyl
N-terminii not to be recognised as amino acid
sequences.
Added the predicate "protein" which
is the set "amino" and
the n-terminal acetic acid. Thanks to Andrew
Coulson.
[21/09/93] RS transfor.c transfor.h
Solved remaining problems with huge proteins in
RasWin.
[21/09/93] RS molecule.c
Improved the performance of (helix) secondary
structure
determination, by ordering the h-bonds to
reduce searching.
[21/09/93] RS molecule.c render.c render.h transfor.c
command.c
Modified altered the "Boxing"
algorithm used to determine
bonding to use the Shadow tracing hash table.
This both
reduces memory and dramatically increases
performance
(halving the time to read 2GLS from 43s to 21s
on a sun4).
[17/09/93] RS molecule.c molecule.h command.c raswin.c
Solved (some) problems caused by reading in
huge proteins
with more than 32767 atoms and bonds, and
larger in diameter
than can be represented by 16 bit integers.
[17/09/93] RS render.c
Corrected more problems caused by integer
overflow and the
division by zero errors when zooming Ribbon
models in RasWin.
[15/09/93] RS command.c
Extended expression syntax to include numbers
as primitive
expressions to specify a given residue sequence
number. Hence
the "select 5,6" is equiavalent to
"select resno=5,resno=6"
and "select 10-20" means "select
(resno>=10) and (resno<=20)".
[14/09/93] RS render.c
Corrected problems caused by integer overflow
and integral
type conversion warnings with Spline code when
zooming.
[13/09/93] RS x11win.c rasmol.h
Added check to the X Window System MIT shared
memory extension
to test if server is on the same host (bug in
XShm?) and hence
made MITSHM enabled as the default option.
[13/09/93] RS render.c pixutils.c pixutils.h
Completed implementation of ribbons using a
MolScript-like
Hermite spline through Carson's control points.
Optimized
fixed point implementation and improved ribbon
clipping.
[12/09/93] RS render.c transfor.c transfor.h command.c
molecule.h
Added an optional width parameter to the
"ribbons" command
to allow the user to define ribbon width at
each residue
independently, allowing for example wider
ribbons in helix.
[12/09/93] RS pixutils.c pixutils.h command.c tokens.h
Added the command "set strands
<number>" to allow the user to
globally modify the number strands in ribbon
representations.
[29/08/93] RS pixutils.c render.c command.c tokens.h
transfor.c
transfor.h
Added prototype support for the RasMol ribbon
representation
based on a fixed number of straight strands
through Carson's
control points (peptide plane miday between
alpha carbons).
[26/08/93] RS raswin.c rasmol.c command.c
Changed the default colour scheme to CPK.
[26/08/93] RS molecule.c
Added support for saving the currently selected
atoms and
their connectivity information in an alchemy
format file.
[26/08/93] RS x11win.c
Increased the minimum width of the screen to
avoid bug in
the X Scroll bar range checking and limit
XRange to word
boundaries to solve shared memory bug on some
machines.
[25/08/93] RS transfor.c
Changed type of OrigCX, OrigCY and OrigCZ to
type Long to
prevent RasWin crashing when loading PDB files
centered a
long way from the co-ordinate origin.
[25/08/93] RS x11win.c
Improved code for using MIT's shared memory
extension. The
code now uses the XShmCreateImage call and
destroys the shmid
to ensure that the shared memory is reclaimed
when RasMol is
terminated. Thanks to Andre Beck.
[24/08/93] RS abstree.c
Extended the syntax of primitive atom
expressions to allow
the user to select residues (groups) whose
names contain non
alphabetic characters, such as digits. Hence
the new syntax
allows expressions of the form [SO4]20 and
[+U]*P
[24/08/93] RS molecule.c molecule.h render.c
transfor.c abstree.c
Added code to determine hydrogen bonding
between nucleic
acid residues in distrinct chains. Modified
"set hbond
backbone" code, to only draw a single bond
between sugar
phosphate backbones for each pair of
nucleotides.
[23/08/93] RS transfor.c
Modified the way in which ScaleColourAttrib
tries to allocate
the colour map. Now if there are no free
shades, it attempts
to allocate as many close matches as possible.
[23/08/93] RS x11win.c
Improved the XInput extensions dials box
handling code, to
explicitly check the number of Dials and LEDs
present. This
avoids problems on some SGI dials boxes. Thanks
to Nick Blom.
[20/08/93] RS molecule.c molecule.h
Added a backbone representation for nucleic
acid structures
by connecting sugar phosphate P atoms of
consecutive residues.
[20/08/93] RS command.c
Fixed bug caused by
"UpdateScrollBars" being called by the
`rotate' command, even when not running
interactively.
[20/08/93] RS molecule.c molecule.h tokens.h command.c
abstree.c
abstree.h
Added complete code for Kabsch and Sander
secondary structure
determination of alpha helices. Added
predefined set "HELIX"
that contains all atoms contained in a alpha
helix structure.
[19/08/93] RS command.c
Fixed bug in LoadScriptFile that assumed that
it was being
called after parsing a command line, causing
RasMol to crash
SGI machines that had ".rasmolrc"
initialisation files. Thanks
to Peter Murray-Rust and special thanks to Tom
Smith!
[19/08/93] RS transfor.c command.c
The restrict command (and hydrogen/hetero menu
options) now
removes bonds connected to any removed atom
ignoring the
bondmode setting. Isabelle Phan
(phan@bioch.ox.ac.uk)
[19/08/93] RS raswin.c
Added Alchemy file type to the RasWin FileOpen
dialog box.
[19/08/93] RS molecule.c
Imposed maximum backbone bond length of 7.00
Angstroms.
[18/08/93] RS rasmol.c raswin.c
Modified the actions performed by ReDrawFlag
when no
molecule is loaded. This allows the background
colour
to be changed before loading a molecule.
[18/08/93] RS x11win.c
Corrected a memory deallocation problem, caused
by the
XDestroyImage freeing the current frame buffer.
This has
caused numerous untracable errors in previous
versions.
[18/08/93] RS abstree.c molecule.c
Added support for IUPAC hydrogen names
"1H", "2H" etc...
[10/08/93] RS command.c transfor.c transfor.h
molecule.c molecule.h
Added the "colour hbond type" command
to enable hydrogen
bonds to be drawn in colours associated with
their offsets.
[09/08/93] RS abstree.c abstree.h command.c tokens.h
Completely reorganised the classification of
amino acids into
predefined sets. Added sets for
"surface" and "buried", for
"small", "medium" and
"large" and synonyms "positive" and
"negative" for "acidic" and
"basic", the "charged" sets.
[05/08/93] RS molecule.c molecule.h command.c tokens.h
Added support for reading in Alchemy format
data files, as
used by the popular PC and Mac program. Thanks
to Steve Ludtke.
[05/08/93] RS rasmol.c raswin.c x11win.c mswin31.c
command.c
Changed default value of ReDrawFlag to
initially be zero
until the molecule is loaded. This corrects bug
when the
dispatcher doesn't check stdin when no molecule
loaded.
[03/08/93] RS raswin.c mswin31.c
Added Print option to the RasWin file menu to
allow the
current image to be printed out using the MS
Windows
printer drivers. Tested for Mono & Colour
PostScript.
[03/08/93] RS abstree.c
Changed definition of the sets
"hydrophobic" and "polar".
Glycine (GLY) is now considered a polar amino
acid residue.
[03/08/93] RS rasmol.c x11win.c
Improved dispatch of pending X11 events [RasMol
now processes
all X Events until quiescent]. Holding down
scroll bar arrow
spins until mouse button released. Fixed server
colour search
bug when not running interactively. Thanks to
Doug Phillips.
[03/08/93] RS molecule.c
Modified the order in which molecules are
internally stored
so saving PDB files preserves the correct atom
ordering. Also
solved output chirality problems when INVERT is
defined.
[03/08/93] RS outfile.c
Fixed bugs and improved performance of writing
output files
under MS Windows caused by rounding when INVERT
is defined.
[29/07/93] RS outfile.c
Fixed bug when generating 24bit Run Length
Encoded sun
rasterfile format images, thanks to Doug
Phillips. Fixed
Monochrome RLE PostScript bug, thanks to Andrew
Coulson. Also
changed "64 idiv" to "-6
bitshift" to speed up PostScript.
[28/07/93] RS outfile.c outfile.h command.c rasmol.c
raswin.c
Modified the PostScript output routines to
include a run
length encoding (RLE) compression option (as
default). This
has significantly reduced the size of output
files from
several megabytes to a few hundred kilobytes
per image.
[27/07/93] RS tokens.h command.c molecule.c molecule.h
Added functions to write out currently selected
atoms to a
PDB file as viewed from the current rotation
matrix. This
command doesn't output CONNECT, SSBOND or
MASTER records
yet. May also add HELIX, TURN and SHEET records
in future.
[27/07/93] RS mswin31.c
Corrected bug that resulted in the PixMap image
of a molecule
persisting (being redrawn after expose events)
after the
molecule has been `closed' or `zapped!'.
[26/07/93] RS !Defined macro "Long" in
rasmol.h to be the 32bit
integer type on the current architecture. This
should be
defined as long on all architectures except the
64bit
DEC Alpha.
[23/07/93] RS Imakefile
Created Imakefile to allow easy compilation on
local machines
using the `xmkmf' command to generate Makefiles
with the
appropriate parameters.
[21/07/93] RS bitmaps.h graphics.h transfor.c
Corrected compilation warnings generated by the
Solaris v2.0
C Compiler due to default signed chars and ANSI
C division.
[08/07/93] RS command.c tokens.h
Changed the way keywords are identified from
searching a table
of binary search trees ordered by frequency, to
binary search
of an initialised array by token length. This
should reduce
both memory and processing time.
[08/07/93] RS abstree.h
Altered the syntax of primitive atom
expressions to provide
better support for numeric chain identifiers
using optional
colon before chain. CYS11:1 can be
distinguished from CYS111!
[03/07/93] RS rasmol.h raswin.c rasmol.c render.c
molecule.c
Added support for Dynamic Data Exchange (DDE)
of RasMol
parameters and valuation data under MS Windows
3.1.
[02/07/93] RS molecule.c
Corrected a typographical error resulting in
molecules being
drawn back to front. This produced images of
molecules with
the wrong chirality. Thanks to Pedro Coutinho
and Tom Smith.
[01/07/93] RS command.c molecule.c
Solved problems when reading in PDB files that
contain no
atoms such as the documentation files cpk.pdb
and shapely.pdb.
This allows colour masks to be stored in a
separate PDB file
and preloaded before the main molecule. Thanks
to Bob Strunz.
[01/07/93] RS graphics.h x11win.c
Added much better support for 24bit and 32bit
XVisual display
types. This now permits the 8bit RasMol to run
find an
appropriate visual on 24bit and 32bit screens.
This solves
problems with obscure default visuals. Special
thanks to
Jenny Barna.
[30/06/93] RS command.c abstree.c abstree.c
Implemented the "WITHIN" function in
atom expressions. This
selects all atoms within a specified radius of
a given set
of atoms (defined by an atom expression). This
even permits
the WITHIN command to be used recursively.
[29/06/93] RS x11win.c
Improved the local colour map support for 8bit
displays. The
program no detects if the entire global colour
map is already
allocated and forces the use of a local colour
map. This gets
around the problems of black on black menu
bottons and scroll
bars.
[27/06/93] RS command.c transfor.c transfor.h
Implemented the "colour [atom] amino"
command that colours
amino acid residues by their properties. These
colours are
more intuitive (conventional) than shapely
colours and better
for a range of displays. Thanks to Andrew
Coulson.
[27/06/93] RS molecule.c transfor.c abstree.h
abstree.c
Added much better support for a wide variety of
element
types by introducing element handles. Van der
Waals radii
and CPK colours are now maintained for a much
larger number
of atom types.
[27/06/93] RS command.c render.c render.h transfor.c
transfor.h
Implemented the "ssbond
<value>" and "hbond <value>" commands
to represent hydrogen bonds and disulphide
bridges as thick
cylinders as well as dashed vectors.
Significantly altered
the dynamics of RasMol by making backbone,
hbond and ssbond
selection lazy. All these modes always clip
vectors and
cylinders. This'll speed up transformation and
selection.
[27/06/93] RS rasmol.c raswin.c abstree.c abstree.h
Added predicates for "aliphatic" and
"aromatic" predefined
sets. Separated expression handling from
molecule.c
[27/06/93] RS command.c graphics.h x11win.c mswin31.c
Added the "hourglass" variable to
rasmol, that enables and
disables the use of the hou glass cursor whilst
RasMol is
busy drawing and image. This was infuriating
during DDE.
[27/06/93] RS render.c pixutils.c
Implemented the section slabmode to draw only a
two a cross
section on the current clipping plane. Modified
the atom
picking to accept this mode, and fixed a minor
bug in the
"half" and "solid"
slabmodes for drawing and picking. Removed
clipping code from the shadowing scanline
routine.
[24/06/93] RS outfile.c
Corrected problem when outputing postscript
files. A rounding
error when shrinking a picture to fit a page
resulted in an
axis being scaled by zero. Thanks to Ian
Morrison.
[23/06/93] RS !RasMol and RasWin added to the EMBL
file server and
anonymous FTP server in Heidelberg, in the
directories
/pub/software/dos and /pub/software/unix of
ftp.embl-heidelberg.de
[22/06/93] RS x11win.c
Fixed problem in selecting the required visual
class that
caused RasMol to crash when running the
OpenWin3 server.
[22/06/93] RS rasmol.h
Added warning messages to the RasMol banner to
describe
current visual depth and if not displaying
interactively.
[21/06/93] RS molecule.h molecule.c
Added short radius and irad fields to HBond
structure
to allow for `thick' hydrogen and disulphide
bonds.
[21/06/93] RS pixutils.c command.c render.c outfile.c
Ensured all function prototypes were surrounded
by #if
defined(__STDC__) || defined(IBMPC) to avoid
errors with
non ANSI C compilers and MS DOS compilers.
[20/06/93] RS Makefile
Added the "-systype bsd43" and
"-signed" options to the mips
entry for sysv and bsd43 domains E&S ESV
workstations thanks
to Andy Sheppard (mbasd@seqnet.dl.ac.uk)
[18/06/93] RS !RasMol version 2.1 added to the
Frequently Asked
Questions (FAQ) list of comp.graphics in the
section on
molecular visualization stuff. A RasMol entry
ias also
added to the molecular graphics menu of the
John Hopkins
University Medical Library Gopher system.
[18/06/93] RS !Announced first public release of
RasMol and RasWin
version 2.1, available by anonymous FTP from
ftp.dcs.ed.ac.uk
[129.215.160.5] in the directory /pub/rasmol.
The announcement
was made in both bionet.software and
comp.graphics newsgroups.