What is new in v2.1?
- Versions 2.1.1 and 2.1.2 contain no new features compared to v2.1;
they just fixed a few bugs.
- The GIF image file output mode.
- Commands push and pop, to
save and restore state parameter values.
- Command comment, to output
a comment to the output file.
- Command debug, to issue a
- Read command: a valid PDB data
set code as argument is interpreted as a file in a local copy of the
PDB data bank, if the environment variable MOL3D_PDB_DIR is set.
- Atom selection: element, to
select atoms of a chemical element type.
- Atom selection: res-atom
which simplifies selecting a specific atom in a given residue.
- Atom selection: peptide
to select atoms C, O and N in amino acid residues.
- Residue selection: segid, to
select residues with a given segment identifier.
- The double-quote character '"' may now be included in a
string by escaping it with a
backslash character: '\"'. MolAuto now also handles cases with
single double-quote characters in PDB COMPND records properly.
- Simplified distribution directory structure, making the
- What was new in version 2?
There are a few cases where v2.1 is incompatible with
previous versions, and where input files which work for v1.4 (and
older) are no longer valid.
The anchor command now allows a
more restricted set of commands within the curly brackets, compared to
what was allowed in v2.0. This is due to a cleanup of the syntax
description, which was sloppy in v2.0. This should not present a
problem in most cases, since the commands that have been excluded were
unlikely to be used within the anchor command anyway.
The EPS format of the previous versions (v1.4 and older) was
fundamentally problematic. It was nearly identical in form with the
proper PostScript output. Although formally valid according to the
PostScript Reference Manual,
it apparently did not satisfy almost any available software.
The new EPS output mode has therefore
been completely redesigned to produce a pixel-based image file format,
containing a pixmap of the image rendered via
In the current version, only PDB coordinate files are
The reason for this was that no examples of the other input
file formats could be easily obtained for testing during the
reimplementation of MolScript.
The other coordinate file formats supported in the previous versions
(v1.4 and older) have become even less important since 1993, and the
PDB format (with all its limitations and problems) is the undisputed
de facto interchange standard for biomacromolecules.
The colourdepthcue parameter in the graphics state has been
removed. Its functionality has been replaced in version 2 by the
fog header command.
The reasons for this change were partly that the function of the old
parameter was badly designed, partly that it was difficult to
implement it in output modes other than PostScript.
In previous versions of MolScript (v1.4 and older) it was possible to
specify the output format produced by MolScript directly in the input
file, by giving a keyword
raster3d before the first plot. This possibility has been
removed. The output format must now be specified as a
The reason for removing this feature was that it was messy (both for
the user and for the developer of MolScript) to have two different
ways of specifying output format. Also, it was unclear how to resolve
conflicts between an explicit setting in the input file and a given
A new parameter bondcross was
introduced in version 2, which controls the size of crosses drawn for
non-bonded atoms in the bonds
command. The same behaviour as in previous versions of MolScript (v1.4
and older) can be obtained by setting the value of this parameter to 0.0.
- version 2.1.2: None. Internal bug fixes only.
- version 2.1.1: None. Internal bug fixes only.
- version 2.1:
- The residue selection
"from... to..." no longer allows the
two names to denote the same residue.
- The definition of the colour purple has
- A character escape mechanism has
been added to take care of double-quotes in strings.
- version 2.0.2:
- Per-vertex colour triangles in object files implemented for
- Orthographic projection for Raster3D (v2.4b).
- version 2.0.1: None. Internal bug fixes only.
- version 2.0:
- Many additions and changes; see the
- Complete source code re-write in C.
- version 1.4:
- An interface to Raster3D written by Ethan A. Merritt.
- Added input stream file change facility using '@'.
- Added macro facility using '$'.
- Added command-line options -s, -e and -r (for UNIX).
- Added inline-PDB feature, allowing self-contained MolScript input files.
- Added the keywords
recall-matrix, which are used to define and use a
specific transformation matrix without having to specify it fully each time.
- Flag noframe to omit the frame around a plot.
- Zero atoms in a selection no longer gives an error, except for
- version 1.3: None. Bug fixes only.
- version 1.2:
- The keyword encapsulated now requires a specification of the
maximum extent paper area to be drawn into by the subsequent plot(s).
- The wildcards '#' (any number) and '+' (any digit) have been
added for string comparisons.
- version 1.1: None.
- 12-Jan-1999: version 2.1.2. Bug fix: Another bug in
- 25 Nov 1998: version 2.1.1. Bug fixes. 1) The previously
documented bug in 'clib/mol3d_io.c'. 2) The previously documented bug
in 'molauto' for the option -ss_hb. 3) A bug in 'image.c' in the
allocation of an X Pixmap, which caused the program to fail on some
systems. 4) Removed the use of SGI's Pbuffer extension on the O2,
since it could possibly create problems on other SGI machines.
- 3 Sep 1998: version 2.1. Fixes for some minor
bugs: OpenGL strand arrow pixel imperfections, more general buffer
depth requirements for OpenGL images, inline-PDB feature bug
(Jon A. Cristopher), Linux compile problem (Hannes Löffler),
problem with too short CRYST1 records (Ezra Peisach and Thomas Schneider),
-size option not documented (Ken Goodwill), problem with double-quotes
in strings (Lynn F. Ten Eyck), line colour with parameter colourparts on.
- 23 Jan 1998: version 2.0.2. Fixes for some minor bugs: PDB file
without END record allowed (Ingo Koerndorfer), macro calls bug (Brian
Smith), 'copy... from... to' bug (Ezra Peisach), Raster3D label
problem with colourparts (Ezra Peisach), real values with leading
decimal point allowed (Joe Krahn), PostScript line crash danger (Ezra
Peisach), Raster3D object init problem (Ezra Peisach), OpenGL mode
parse error crash, added per-vertex triangle colours for Raster3D,
orthographic projection for Raster3D.
- 23 Dec 1997: version 2.0.1. Fixes for a few minor bugs related to
memory-handling, discovered with Purify.
- Nov 1997 (started Dec 1996): version 2.0. See
separate list of new features.
- 21 Dec 1993: version 1.4. Modifications for Raster3D v2.0 (by
Ethan Merritt), added store matrix commands, inline PDB feature,
noframe, input stream files, macros.
- 3 Nov 1992: bug fix: ABORT changed to MABORT, problem in PCCURV
with + signs (Arne Elofsson).
- 11 Sep 1992: version 1.3. Bug fix: selection in
atomradius/atomcolour (Leo Caves).
- 8 Jul 1992: added wildcards '#' (any number) and '+' (any digit)
in string comparisons to conform fully with X-PLOR.
- 24 Apr 1992: version 1.2. Bug fixes: aspect ratio and segment
pruning (Eric Fauman), Encapsulated Postscript (Paul McLaughlin,
- 11 Nov 1991: bug fix: output transformation matrix transposed.
- 19 Apr 1991: conforms to PostScript Document Structuring
Conventions version 3.0.
- 7 Apr 1991: changed wildcard character '#' to '%' (as in X-PLOR).
- 28 Feb 1991: version 1.1. First exportable version.
- 30 Jan 1991: version 1.0. First decently executable version.
- 6 Dec 1990: first attempts.
The development of MolScript progresses at a very uneven speed. New
versions containing novel features and/or bug fixes are planned, but
the implementation of these take place whenever there is time. No
commitment as to release dates can be given.
However, the author gives the following statement of intent:
No new features will conflict with previously available
features. Later versions of MolScript will be proper supersets of
earlier versions, i.e. everything that works with one version
of MolScript will work with a later version.
Erroneous behaviour (i.e. bugs) may be changed between
versions. In v2.1, this applies especially to the implementation of
lighting in the
Raster3D output mode, which
is suboptimal, and should be improved
in future versions.
Only in extremely well-founded cases will there be exceptions to this
(but see below). However, if any such
exceptions are introduced, these will be high-lighted in the
The reason for giving this statement is to make it possible for other
programmers to produce software that automatically generates MolScript
input files, which will be valid also for later versions of MolScript.
Note that this policy statement does
not refer to the internal implementation details of
MolScript, nor to the details of the output file formats. For
instance, the procedure definitions in the
PostScript output file, or the
PROTO's in the VRML 2.0 output file may
very well change from one version to the next.
The MolScript software is not an API (Application
Programming Interface). The internal features of the MolScript source
code are not intended to be used as library routines in other
Note that there is no guarantee that the organisation
of the source code will be stable in future versions of MolScript. The
source code may change drastically between releases. Any modifications
or addition you make to the source code will most likely have to be
reviewed carefully before upgrading to a new version.