Chime vs. RasMol

by Eric Martz, University of Massachusetts MA US.
Revised 2003


Chime is a free program which brings the inspired molecular graphics and user interface of RasMol to Netscape as a plug-in, with greatly enhanced capabilities for educational tutorials.

RasMol is famous for

These outstanding features of RasMol were developed by Roger Sayle, its author, and generously donated to the public domain by Roger, and later by Roger's subsequent employer, GlaxoWellcome.

Chime retains most of these great features*. Because it is a Netscape plug-in, molecular structure tutorials using Chime can be viewed as ordinary web pages. This makes them more easily accessible than are RasMol "movie" scripts. By virtue of being embedded in web pages, Chime removes many limitations which RasMol places on educational tutorials. In addition, enhancements to RasMol's scripting language which have been implemented in Chime make it far superior to RasMol for educational scripts. And Chime has other new capabilities not found in RasMol.

*Exceptions: Chime's source code is proprietary; Chime cannot save scripts directly to disk files.

Who made Chime, and why is it free?

Chime is the product of MDL Information Systems, Inc., a software company specializing in databases and information management systems for the pharmaceutical and chemical industries. One of MDL's products in the late 1990's, Chemscape, provides structure and text searching via a web browser into a client's database. Chime Pro, a commercial product, was built as a molecular structure viewer to inteface with Chemscape. Chime 1.0, lacking the Chemscape interface, was made available free to all users. This benefits MDLI by increasing the visibility of their company and their products, while simultaneously benefitting the scientific and educational communities at large. Tim Maffett was the principal architect of Chime 1 and 2. Major contributions to Chime 2 and later versions were by Bryan van Vliet, Franklin Adler, and Jean Holt. (In 2003, only Holt remains at MDL.)

Chime is Built upon RasMol

Tim Maffett, Chime's principal architect at MDLI, used 16,000 lines of RasMol's C source code as part of the infrastructure of Chime. This was possible because Roger Sayle, RasMol's author, had generously placed RasMol's source code into the public domain. For use in Chime, the RasMol source code was converted to C++ and modified to become reentrant (which allows multiple Chime plug-in's to run simultaneously, even on a single web page). Maffett and other programmers at MDLI added over 100,000 lines of original C++ code to create Chime.

What Chime Has that RasMol Lacks

Probably the most important enhancement Chime adds to RasMol functionality is being a plug-in. As explained below, this has enormous benefits for educational tutorials. However Chime also added wholly new features including:

Advantages of Chime over RasMol for Educational Tutorials

Flow control: hypertext, buttons, nonlinearity.
RasMol scripts have very limited flow control. They can only move forwards (not backwards) through a linear path (no branches, no hypertext).

By virtue of being a plug-in, the HTML environment in which Chime is embedded allows flexible flow control. Backing up can be as simple as reloading a web page, or can involve re-displaying an earlier rendering by re-playing an earlier command script. A hypertext-linked table of contents, or a group of text-labeled buttons can allow entry into a script at any user-selected point. Thus, the progression of a user through a tutorial can be nonlinear and tailored to the user's needs and interests.

Legends: color-keyed, font control. RasMol's echo command can write multiple-line text legends to accompany the molecular graphic. However, these legends cannot be in color. One of the powerful features of RasMol is the use of consistent, highly informative color schemes. For example, the CPK (Corey Pauling Koltun) scheme allows identification of the element for each atom. One needs a legend which identifies oxygen as red, nitrogen as blue, carbon as gray, etc. Such a legend is enormously more effective when in color, which cannot be done in RasMol.

C O N Fe

RasMol's legend font is fixed. On high-resolution displays, it becomes too small to read when projected.

The HTML control of legends on a Chime web page allows full color and font size control. Here is an example, a linear tutorial on Hemoglobin Structure.

Unlimited, independently scrolling, descriptive hypertext. Text descriptions within RasMol are limited to a few lines echoed to the command line window (see legends, above). MAGE allows more extensive text, but not true hypertext. With Chime, unlimited, independently scrolling hypertext can be in a separate frame adjacent to the graphic. Buttons embedded in the text control the graphic by sending script segments to Chime. Here is an example by David Marcey on DNA Polymerase. (This version has been revised. The original version was perhaps the earliest Chime-based tutorial, first available in 1996).

Hardware-independent timing. The speeds of movements in RasMol scripts are hardware-dependent. When a RasMol script is run on a computer different than the one on which it was developed, often it runs far too fast or too slow. Adjusting the timing in a RasMol script typically takes several hours. Chime provides clocked moves and delays which occur in specified time intervals, independent (as much as possible) of hardware speed. (Slow machines have less smooth movements, which may exceed the desired time; fast machines have smoother movements which never occur in less than the desired time.)

User movement without misorienting subsequent script. In RasMol scripts, when standing at a pause, the user can rotate, zoom, and slab the molecule with the mouse. However, when continuing, the molecule may be left misoriented. Preventing this requires tedious hand-coding to restore the pre-pause orientation after the pause. Therefore, few RasMol scripts do this consistently. Chime's new view save and view restore commands make this easy.

Advantages of Chime over RasMol for self-directed exploration

RasMol offers a superb user interface with which you can explore interactively any PDB file ("molecule") of your choice, provided you learn a rather extensive, powerful command language. By itself, Chime does not provide a command-line interface. However Chime includes a mechanism that enables the programmer of a web site to add a command-line interface.

Protein Explorer, first made available in late 1998, and continually enhanced since then, provides (in addition to a command-line interface) a user interface to Chime that enables loading any molecule through the Internet, or from your local disk. Protein Explorer's menus, buttons, and extensive automatially displayed context-sensitive help enable RasMol-like self-directed exploration without learning the extensive RasMol command language. Further, Protein Explorer provides a knowledge base that helps novices understand what they are seeing, and provides links to related resources. Thus, Protein Explorer is the easiest way to explore the molecule of your choice.

Advantages of RasMol over Chime

High-Resolution Printing. Chime images can be printed at screen-resolution. Obtaining a high-resolution image requires that Chime be displayed on a high-resolution screen, but the image is still limited to screen resolution. Chime offers none of RasMol's Export options, notably vector postscript, needed for truly high-resolution printing.

Source code. RasMol's source code is in the public domain. This allowed individuals to modify RasMol and port it to many operating system platforms. In the late 1990's, a group led by Herbert Bernstein founded the Open RasMol project to continue development of RasMol. RasMol code has been adopted not only to Chime, but also to other programs such as WebLab (originally developed by MSI, now offered by Accelrys).

Chime source code is proprietary to MDL. This has been very frustrating for the large Chime user community. It has prevented the fixing of bugs or addition of needed enhancements. MDL had made some important enhancements, such as the ability to work in Internet Explorer, and has occasionally responded to the needs of the biochemical user community (addition of the "show pdbheader" command in 2000). However, in the main, and especially in the new millenium, the pace of development of Chime by MDL has been far slower than Chime's user community would like. Nevertheless, because of the great power built into Chime, many people have chosen to continue to use it and to develop Chime-dependent resources.

Revision dates: Feedback to Eric Martz.