RasMol 2.7.5 Molecular Graphics Visualisation Tool 13 June 2009 (rev. 17 July 2009) Based on RasMol 2.6 by Roger Sayle Biomolecular Structures Group, Glaxo Wellcome Research & Development, Stevenage, Hertfordshire, UK Version 2.6, August 1995, Version 2.6.4, December 1998 Copyright (c) Roger Sayle 1992-1999 and Based on Mods by +---------------------------------------------------------------------------------------------+ | Author | Version, Date | Copyright | |----------------------+---------------------------------+------------------------------------| | Arne Mueller | RasMol 2.6x1 May 1998 | (c) Arne Mueller 1998 | |----------------------+---------------------------------+------------------------------------| | Gary Grossman and | RasMol 2.5-ucb November 1995 | (c) UC Regents/ModularCHEM | | Marco Molinaro | RasMol 2.6-ucb November 1996 | Consortium 1995, 1996 | |----------------------+---------------------------------+------------------------------------| | Philippe Valadon | RasTop 1.3 August 2000 | (c) Philippe Valadon 2000 | |----------------------+---------------------------------+------------------------------------| | Herbert J. Bernstein | RasMol 2.7.0 March 1999 | (c) Herbert J. Bernstein 1998-2008 | | | RasMol 2.7.1 June 1999 | | | | RasMol 2.7.1.1 January 2001 | | | | RasMol 2.7.2 August 2000 | | | | RasMol 2.7.2.1 April 2001 | | | | RasMol 2.7.2.1.1 January 2004 | | | | RasMol 2.7.3 February 2005 | | | | RasMol 2.7.3.1 Apr 06 | | | | RasMol 2.7.4 Nov 07 | | | | RasMol 2.7.4.1 Jan 08 | | | | RasMol 2.7.4.2 Mar 08 | | | | RasMol 2.7.5 Jun 09 RasMol | | | | 2.7.5.1 Jul 09 | | +---------------------------------------------------------------------------------------------+ This Release by Herbert J. Bernstein, Bernstein + Sons, 5 Brewster Lane, Bellport, NY, USA yaya@bernstein-plus-sons.com Copyright (c) Herbert J. Bernstein 1998-2009 ----------------------------------------------------------------------------------------- THIS IS A PRELIMINARY RELEASE INVOLVING EXTENSIVE MODIFICATIONS ***** USE WITH CAUTION ****** ----------------------------------------------------------------------------------------- IMPORTANT This version is based directly on RasMol 2.7.4.2, RasMol 2.7.4.1, RasMol 2.7.4, RasMol 2.7.3.1, RasMol 2.7.3, RasMol 2.7.2.1.1 and on RasMol 2.7.2, on RasMol 2.7.1.1, on RasTop 1.3, on RasMol version 2.6_CIF.2, on RasMol version 2.6x1, on RasMol version 2.6.4, and RasMol 2.5-ucb and 2.6-ucb. Please read the file NOTICE for important notices which apply to this package and for license terms (GPL or RASLIC). This version of RasMol is not in the public domain, but it is given freely to the community in the hopes of advancing science. If you make changes, please make them in a responsible manner, and please offer us the opportunity to include those changes in future versions of RasMol. ----------------------------------------------------------------------------------------- Changes from RasMol 2.7.4.2 to RasMol 2.7.5 include: * Support for SBEVSL movie commands. * Support for Lee-Richards surface approximation by contouring pseudo-Gaussian electron densities. * Selection of atoms by proximity to map contours * Coloring of maps by the colors of neighboring atoms * Signficant improvements to the GTK version by Teemu Ikonen Changes to RasMol 2.7.4.2 to create RasMol 2.7.5.1: [18/07/2009] HJB .symlinks Update .symlinks to 2.7.5 [17/07/2009] HJB cif.c command.c raswin_install.nsi Windows port changes: Update NSIS installer script Change from mktemp to tmpfile and use rewind not freopen [17/07/2009] HJB rasmol.doc rasmol.hlp rasmol.html cif.c command.c rasmol.man rasmol.tex rasmol.vms raswin.rtf Update doc for 2.7.5, and fix some spacing [17/07/2009] HJB cif.c x11win.c Correct X11 file menu for more than 5 open files Correct cif_read_file CBFlib version to use a temporary file [16/07/2009] HJB rasmol_install.sh Correct reporting of font installs for Chinese.X and Japanese.X [14/07/2009] HJB transfor.c Fix missing scaling in new translate logic [12/07/2009] HJB command.c command.h tokens.c trnasfor.c transfor.h Preliminary movie play logic. [11/07/2009] HJB command.c Switch record templates to SSSSSS as per manual Fix a bug in defer symbol linking Report undefined symbols in calls to show defer symbol [10/07/2009] HJB Imakefile_base command.c Correct Imakefile_base Add defer/execute movie interaction [09/07/2009] HJB Imakefile_base rasmol_build_options.sh Provide new script, rasmol_build_options.sh to reconstruct new Imakefile from stable Imakefile_base [09/07/2009] HJB Imakefile rasmol.c Default Imakefile to use local copies of CQRLIB, CVECTOR, XFORMSLIB and CBFLIB. Change from use of fl_init to fl_initialize for xforms-1.0.91 [08/07/2009] HJB Imakefile abstree.c applemac.c cif.stx.tab.c cmndline.c command.c command.h graphics.h gtkwin.c multiple.c outfile.c rasmac.c rasmol.c rastxt.c raswin.c render.c repres.c transfor.c transfor.h wbrotate.c wbrotate.h x11win.c Partial changes for defer/execute command. Update versions of external files used in Makefile. Cleanup of varibables names for saving dial values. [04/07/2009] HJB command.c maps.c molecule.c pixutils.c rasmol.h repres.c transfor.c Clean up errors in map color atom command and remove use of polys with differing vertex colors by breaking up the triangles into monchrome subtriangles [02/07/2009] TPI molecule.c Add #define _GNU_SOURCE to get the correct definition of basename() [29/06/2009] HJB command.c Fix to map select atom add Add esd to map show for distances to surfaces and make code for distances to reentrant surfaces more accurate [25/06/2009] HJB Imakefile command.c molecule.c molecule.h Update to use of NearTree 2.1.2 Add code to report surface fit stats in map show [18/06/2009] HJB Imakefile build_MACOSX.sh build_all.sh command.c rasmol_install.sh tokens.c tokens.h Add 'add' and 'within' parameters to map select atoms command Also allow search radius to be specified [16/06/2009] HJB Imakefile Update Imakefile for use of installed packages [14/06/2009] HJB Imakefile Set up loads of necessary external packages from sourceforge [13/06/2009] HJB Imakefile applemac.c cmndline.c cmndline.h command.c graphics.h maps.h molecule.c molecule.h mswin31.c multiple.c rasmac.c tokens.c tokens.h transfor.c transfor.h x11win.c Integrate surface and movie code with gtk code [03/06/2009] TPI rasmol.c DisplayUsage(): Revert back to fputs [27/05/2009] TPI render.c Do not assume sizeof(Pixel) == sizeof(Long) Use variables of type Pixel consistently in buffer clearing functions. Remove version of ClearBuffers() which does not require memset(). [17/07/2009] TPI graphics.h add startup representation flags [17/07/2009] HJB rasmol.doc rasmol.html rasmol.man, Update manual to 2.7.5 [12/05/2009] TPI gtkwin.c Fix vte input problems by using vte input callback instead of g_io_watch. Various file open fixes to GTK version Fix setting of initial window size. Fix file open in GTK version: Copy the file name to global var DataFileName before calling FetchFile. Add file type filtering to GTK filechooser. Whitespace fixes. [12/05/2009] TPI rasmol.c Fix text output with VTE in GTK interface. [12/05/2009] TPI command.c command.h rasmol.c Refactor file opening code. Add support for opening more than one file from the command line. Simplify file opening code, remove globs and allow to open files with spaces and other 'special' characters. Fix reading files from stdin with '-' arg. [07/02/2009] HJB command.c command.h rasmac.c rasmol.c rastxt.c raswin.c tokens.c tokens.h transfor.c transfor.h Updates to enable the record mode to files. Use with caution, there are some problems with picking up ReDrawFlag on changes in appearance. Mouse motion helps to get past the glitch. [06/02/2009] HJB command.c command.h graphics.h gtkwinc. maps.c rasmac.c rasmol.c rastxt.c raswin.c tokens.c tokens.h transfor.c transfor.h First pass at SBEVSL movie-making commands [16/11/2008] HJB command.c maps.c Update to Lee-Richards approximation for probe of given probe radius with new logic for map spread 0; map scale off; so that set radius ; map resolution .67; map spread 0; map scale off; map generate surface produces a good surface approximation [20/05/2009] TPI molecule.c ReviseTitle(): If no identcode, use filename in the title [20/05/2009] TPI gtkwin.c multiple.c Update GTK molecule list when a molecule is picked gtkwin.c: set_gtk_open_file(); new function. UpdateGtkMoleculeList(); free allocated lists, reindent multiple.c: SelectMolecule(); call set_gtk_open_file() [20/05/2009] TPI gtkwin.c rasmol.c Fix recent files support in GTK version build_gtkmenu(): Set recent user sort type to most recently used. Display 30 recent files. Reindent. [20/05/2009] TPI printing-resolution.glade sizechooser.glade Remove useless response_id properties from glade files [18/05/2009] TPI gtkwin.c rasmol.c Really fix VTE output in GTK version. Stop using PTYs for terminal io with VTE. Don't touch the controlling terminal during init and reset. Make Delete key work and ignore unhandled terminal escape sequences. Use custom versions of RasMolExit and RasMolFatalExit in GTK version. Add some keyboard shortcuts to the GTK GUI. [18/05/2009] TPI gtkwin.c Change image export shortcut to C-X [14/05/2009] TPI rasmol_48x48.xpm Imakefile gtkwin.c Add an xpm icon for Rasmol. Set window icon in the GTK version. [13/05/2009] TPI command.c revert the filename globbing and extension handling code [15/02/2009] HJB rasmac.c rasmol.c raswin.c Clean up handling of ReDrawFlag for appearance changes [31/10/2008] HJB command.c maps.c First pass a Lee-Richards surface approximation for map generate with map resolution 1; map cale off; map level .5; map generate mesh Changes from RasMol 2.7.4.1 to RasMol 2.7.4.2 include: * Alignment of command line sizing and positioning options for Windows and X-Windows version. The command line options -height nnnn, -width nnnn, -xpos nnnn and -ypos nnnn may be used to set the size and position of the initial window. * Change of the encoding for Japanese messages and menus from SJIS to EUC-JP, and corrections to the fontset handling for Chinese and Japanese. Thanks to Mamoru Yamanishi for contributing the improved fontset logic. * Updates to the rasmol_install.sh and rasmol_run.sh scripts to support Chinese and Japanese using cxterm. * Optional use of GTK. Thanks to Teemu Ikonen for the new GTK code. Changes to RasMol 2.7.4 to create RasMol 2.7.4.1: [18/03/2008] HJB graphics.h mswin31.c rasmol.c rastxt.c raswin.c x11win.c Add global InitWidth, InitHeight, InitXPos, InitYPos to support common implementation of command line options -height nnnn -width nnnn -xpos nnnn -ypos nnnn to control initial window size and position [18/03/2008] HJB x11win.c Redo Japanese and Chinese fontset logic as per suggestion by Mamoru Yamanishi [18/03/2008] HJB Imakefile Allow use of old X locale. [18/03/2008] HJB langsel_unix.c Switch Japanese for unix from SJIS to EUC-JP, introducing langsel_unix.c [21/02/2008] TPI actionmenu.gtk egg-macros.h eggfileformatchooser.c eggfileformatchosser.h graphics.h gtkwin.c Imakefile multiple.c printing-resolution.glade rasmol.c sizechooser.glade transfor.c wbrotate.c Addition of GTK interface by T. Ikonen, including new routines actionmenu.gtk egg-macros.h eggfileformatchooser.c eggfileformatchosser.h gtkwin.c printing-resolution.glade sizechooser.glade Changes from RasMol 2.7.3 to RasMol 2.7.4.1 include: * Support for maps. * Message and menu translations for Russian, Bulgarian, Japanese and Chinese. Our thanks to G. Pozhvanov, G. Todorov, Nan Jia, Mamoru Yamanishi and Katajima Hajime. * Fix torsion angle calculation as per bug report and patch by Swati Jain. * Corrections by Ladislav Michnovic to port to more platforms. * Code to read remediated PDB entries as suggested by Huanwang Yang * Updated icons. * Extended export menus. Changes to RasMol 2.7.4 to create RasMol 2.7.4.1: [19/01/2008] HJB Release 2.7.4.1 created [18/01/2008] HJB command.c, maps.c, maps.h, molecule.c mswin31.c outfile.c outfile.h pixutils.c pixutils.h rasmac.c, repres.c Add LoadCCP4MapFile. Extend range of stereo angle to 60 degrees. Add GM notoggle command. Add code to avoid trying to reuse a zapped map. Increase default map resolution to 1 Angstrom. Change mapdata to void * and use memmove to allow multiple data types, add fields for number of grid divisions, map type, element size and element type. Add code to load and save maps in CBFlib format. Fix stereo. [16/01/2008] HJB vector.c wbrotate.c Fix multiple definitions of PI. [14/01/2008] LM infile.c Add include of string.h as per Ladislav Michnovic. [14/12/2008] HJB graphics.h Add buffers for slab and depth pixel-by-pixel cutoff values. [10/12/2007] GM langsel.c langsel.h languages/README.txt languages/genlanselall languages/langsel*.utf.c, tokens.c tokens.c Corrected japanese langsel encoding. It is now Shift_JIS.Added messages for NoToggle and ColourMode commands. Updated langsel README.txt. Add NoToggle and ColourMode commands [06/12/2008] GM command.h Add NoToggle and ColourMode variables. [25/11/2007] HJB cif_fract.c Rewrite calculation of matrix inverse. Changes to RasMol 2.7.3.1 to create RasMol 2.7.4: [19/11/2007] HJB Release 2.7.4 created [19/11/2007] HJB abstree.c abstree.h Break out element identification from GetElemNumber into GetElemDescrNumber. Fix torsion angle calculation as per bug report and patch by Swati Jain. [19/11/2007] HJB applemac.c Add code to make languages sticky. Add register and donate menu items, make languages sticky and launch browsers. [19/11/2007] HJB cif_fract.c Correct calculation of matrix transforming orthogonal to fractional coordinates and rewrite matrix transforming fractional to orthogonal. [19/11/2007] HJB command.c command.h Add code for map commands. Make CommandError accessible from other routines. Add Raster3D write/save option. Allow proberadius of 6 Angstroms. Add Bulgarian, Chinese, Japanese and Russian commands. Allow spacefill up to 12 Angstroms. Allow mirror and rotate suboptions on write/save. [19/11/2007] HJB font.h, graphics.h Allow access to font parameters and support info [19/11/2007] HJB Imakefile Add use of CBFlib [19/11/2007] HJB infile.c Make sensitive to PDB version to allow for handling of remediated files, based on changes suggested by Huanwang Yang of the RCSB PDB in April 2007. [19/11/2007] GT langsel.c languages/ langsel.c restructured to be generated from separate language files in the directory languages/ [19/11/2007] HJB molecule.c molecule.h Add atom type processing and DA, DC, DG, DT, DI for remediated PDB DNAs, based on changes suggested by Huanwang Yang of the RCSB PDB in April 2007. [19/11/2007] HJB multiple.c multiple.h Manage map data for multiple molecules. Increase the number of molecules from 5 to 15. Increase the number of characters in the name to 33 characters. [03/12/2006] HJB outfile.c Clean up compilation warnings in outfile.c [19/11/2007] HJB outfile.c outfile.h Add Raster3D support based on code by V. Stanev. Partial Vector PS map support. [19/11/2007] HJB pixutils.h Fix stereo of ribbons and map surfaces. Protect against duplicate definition of Knot struct. Make ClipPolygon accessible. [19/11/2007] HJB rasmac.c rasmac.h Increase terminal window to 132 characters. Add About dialog. Clean up maps on exit. Add support for Russian, Bulgarian, Chinese and Japonese. Add register and donate browser calls. Add G4 CPU type. Extend export file types. [19/11/2007] HJB RasMac.r Update icons to new style. Extend Export menu to BMP..., GIF..., IRIS RGB..., PPM..., Sun Raster, PostScript, PICT..., Vector PS ..., Molscript ..., Kinemage ..., POVRay 3 ..., VRML ..., Ramachandran ..., Raster3D ..., RasMol Script .... Extend Apple menu to About RasMol..., RasMol Help ..., Register ..., Donate .... [19/11/2007] HJB rasmol.c Update to release 2.7.4 with map support. [19/11/2007] HJB script.c script.h Add code to write out scripts for maps. [19/11/2007] HJB string_case.c string_case.h Fix case sensistive of last character comparison of strcasecmp and strncasecmp. Add str255casecmp, strcasestr. [19/11/2007] HJB tokens.c tokens.h Add tokens for Average (MeanTok), Bulgarian (BulgarianTok), Chinese (ChineseTok), Contour (ContourTok = LevelTok), Generate (GenerateTok), Japanese (JapaneseTok), Level (LevelTok = ContourTok), Map (MapTok), Mask (MaskTok), Mesh (WireframeTok), Mirror (MirrorTok), New (NewTok), Next (NextTok), R3D or Raster3D (Raster3DTok), Resolution (ResolutionTok), Spacing (SpacingTok), Spread (SpreadTok), Width (SpreadTok), [19/11/2007] HJB transfor.c transfor.h Add map point colouring routines, ColourPointAttrib and ColourPointPotential. [19/11/2007] HJB x11win.c Extend Export menu to BMP ..., GIF ..., IRIS RGB ..., PPM ..., Sun Raster, PostScript, PICT ..., Vector PS ..., Molscript ..., Kinemage ..., POVRay 3 ..., VRML ..., Ramachandran ..., Raster3D ..., RasMol Script .... Enable and extend Help menu to About RasMol..., User Manual..., Register..., Donate.... Set locale for each langauge and use fontsets. Use table of languages versus fonts in langsel. Add About splash screen and revise popup logic to handle it. Change text metrics to allow for Chineses and Japanese. Try to make lack of access to shared memory non-fatal. [03/10/2007] PK molecule.c "RasMol - " string added to the title of the window. [03/10/2007] PK multiple.c Window title is updated when different molecule is selected. [02/02/2007] HJB rasmol.c Remove // comments for AIX build. Fix signed length conflict [01/03/2007] GT rasmol.c Chinese version. [23/12/2006] HJB x11win.c Detect remote X server that does not share memory [29/12/2006] HJB rasmol.c x11win.c Update x11win.c and rasmol.c to add links to list of browsers and to kill About dialog when the menu bar is selected [29/12/2006] HJB rasmol_install.sh Update rasmol_install.sh to allow recompilation of fonts on install to handle openwin and other old systems that can't handle byte-swapped bdf files, and add enviroment variable RASMOL_NOSPAWN to suppress spawn in intermediate xterm from rasmol_run.sh. -- HJB [23/12/2006] HJB rasmol_install.sh, rasmol_run.sh scripts Add new rasmol_install.sh and rasmol_run.sh scripts [29/11/2006] HJB raswin.idm Fix missing raswin.idm in src. [29/11/2006] HJB rasmol.c Add missing include of sys/stat.h in rasmol.c [10/12/2006] HJB x11win.c Additional updates for linux build with Russian, cleaning up X11 font selection for CP1251 and recovering when fonts are missing. -- HJB [03/12/2006] HJB x11win.c Mods for about screen under Linux -- HJB [28/11/2006] HJB x11win.c Changes for Russian and About dialog in unix [20/10/2006] HJB wbrotate.c Localize " not found!" message in RemoveBond and CreateBondAxis [16/09/2006] HJB x11win.c rasmol.c Start of RasMol Russian Translation Project based on translations by Gregory A. Pozhvanov of Saint Petersburg State University. [11/02/2006] HJB script.c script.h Add mirror and rotate options for VRML. Changes from RasMol 2.7.2.1.1 (the final reference release of RasMol 2.7.2) to RasMol 2.7.3.1 include: * Adjustment to the mouse handling for a better, more natural feel. Our thanks to C. Chigbo for the suggestion. * Correction to cif.c for blanks after an initial quote mark. * Correction to mswin31.c to restore lost initializations of ZRange and DialValue[8..9]. * Modifications by Mamoru Yamanishi to Imakefile and rasmol.c to use xforms for GUI file open. This patch needs the opens source xforms 1.0.90 library by Steve Lamont. * Correction to molecule.c to correct input of xyz files. Thanks to Stuart Prescott. * Revision to CPK colors by C. Chigbo. The new colors are called CPKNEW. The current CPK colors remain available as CPK. * Correction to negative torsion angle monitors and to imprecise distance and angle monitors by C. Chigbo. This patch corrects the display of negative torsion angles caused by use of the unsigned short type, and correctys imprecise distance and angle displays. This extends the original patch which was just for torsion angles (torsion.patch). A side effect of this change is to limit the available range for distance monitors to approximately 327 AAngstroms. * Initial code for display of solid Lee-Richards molecular surfaces. This patch adds the basic code for display of Lee-Richards surfaces with a new Molecular Surface menu item, and surface molecule and surface solvent commands. * Corrections of ribbons 0, etc. commands by R. Chachra. With this patch, the wireframe 0, ribbon 0, cartoon 0, backbone 0, strands 0 and trace 0 commands work the same as these command with off instead of 0. Changes to RasMol 2.7.3 to create RasMol 2.7.3.1: [21/04/2006] HJB rasmol.h RasMac.r raswin.rc Update version to 2.7.3.1 [21/04/2006] CC abstree.c render.c repres.c repres.h Fix by Clarice Chigbo to improve accuracy of distance calculations by changing from Long to double. Report model number. Use Long instead of short for monitors. [15/12/2005] HJB x11win.c Fix mouse runaway by removing conflict of HeldStep and HeldButton variable name use. [16/07/2005] HJB abstree.c infile.c render.c Correct sign errors in use of ztrl Changes to RasMol 2.7.2.1.1 to create RasMol 2.7.3: [06/02/2005] HJB Release 2.7.3 created [21/01/2005] HJB molecule.c Correct XYZ input by capping atom types. Thanks to Stuart Prescott. [16/01/2005] HJB applemac.c, cmndline.c, command.c, command.h, infile.c, langsel.c, langsel.h, langsel_mac.c, molecule.c, molecule.h, mswin31.c, multiple.c, pixutils.c, pixutils.h, rasmac.c, rasmol.c, rastxt.c, raswin.c, render.c, render.h, repres.c, repres.h, tokens.c, tokens.h, transfor.h, x11win.c Base level of changes for Lee-Richards molecular surfaces. [12/01/2005] Clarice Chigbo repres.c, render.c, repres.h Correction to negative torsion angle monitors and to imprecise distance and angle monitors; limits the available range for distance monitors to approximately 327 Angstroms. [17/01/2005] Clarice Chigbo script.c Output CPKNEW in scripts [04/01/2005] Ricky Chachra command.c Fix to wireframe 0, ribbon 0, cartoon 0, backbone 0, strands 0 and trace 0 commands to work the same as these command with off instead of 0 [30/10/2004] Mamoru Yamanishi Imakefile, rasmol.c Used xforms to provide GUI for file open under X-windows [21/10/2004] Clarice Chigbo tokens.c, tokens.h Define CPKNEW token [20/10/2004] Clarice Chigbo transfor.c, transfor.h New CPK color table [26/04/2004] HJB cif.c correction to handling of blank immediately following initial quote mark. [26/04/2004] HJB vector.c correction to SubtractAtoms for bond rotation. Changes from RasMol 2.7.1 (the final reference release of RasMol 2.7.2) to RasMol 2.7.2.1.1 include: * Post release patches to command.c were included to fix the handling of load inline in the UCB multiple molecule environment. In addition conditional code controlled by STRICT was disabled to restore operation of load inline under windows. Thanks to Jan Reichert for pointing out these problems. Thanks to E. Martz for pointing out an error in the Spanish translation credits which has been corrected. Thanks to a report by Julien Hering, the omission of a prior fix to the MS Windows version was found and corrected on 7 May 2004. * Adaption of the multilingual mods from RasMol 2.7.1.1 into Rasmol 2.7.2.1. * Rewrite of the mouse handling and rotation logic to correct the problems in 2.7.2 and make the feel of 2.7.2.1 closer to that of RasMol 2.7.1. * Addition of French menus and messages * Addition of Italian menus and messages * Adoption of picking for selection of atoms, groups or chains from RasTop 1.3. * Adoption of backclipping from RasTop 1.3 * Adoption of shadepower command for glassy surfaces from RasTop 1.3 * Change of the menu stereo option to rotate cross-wall-none * Allow longer atom names (12 characters) in CIFs. * Incorporation of some of the code from the UCB RasMol variants. Out thanks to Eileen Lewis and Marco Molinaro for their cooperation in contributing the UCB Enhanced RasMol code for incorporation into the RasMol 2.7 series. * Code to represent bonds in and to alternate conformers with a narrowed portion in the middle of each bond. * An attempt to fix some of the chirality reversals in some of the output modes. * Fixes for some of the problems reported since the last release. Post-release changes to RasMol 2.7.2.1.1: [07/05/04] HJB mswin31.c restored lost fix for intialization of ZRange and DialValue[8..9] and rebuilt raswin.exe. Thanks to Julien Hering. [14/02/04] HJB pixutils.c remove static from declaration of ClipVector. [14/02/14] HJB cif_stx.c remove trailing characters from #endif. [03/02/04] HJB Makefile.in Change transfer to transfor in 2 dependencies. Thanks to R. Harlow. Changes to RasMol 2.7.2.1 to create RasMol 2.7.2.1.1: [26/01/04] HJB abstree.c Fix warning on sprintf calls with unused args, match long variables with %ld format descriptors. [26/01/04] HJB cif.c Add brackets to avoid compiler warnings on dangling elses. Fix cif_lex to parse 'O''' correctly. Change from WORD to CIFWORD to avoid conflict with windows.h. [26/01/04] HJB cif.h Change from WORD to CIFWORD to avoid conflict with windows.h. Add prototype for cif_free_handle. [26/01/04] HJB cif.stx.tab.c Change from WORD to CIFWORD to avoid conflict with windows.h. [26/01/04] HJB cif_ctonum.c Remove unused variable dndec [26/01/04] HJB cif_fract.c Remove unused variable kk [26/01/04] HJB cif_stx.c Change from WORD to CIFWORD to avoid conflict with windows.h. Add include of rasmol.h. [26/01/04] HJB command.c Initialize variables to avoid compiler warnings. Use %ld format for long variables. Fix RotMode == RotBond which should have been an assignment. Add parens on logical expressions. [26/01/04] HJB command.h Add prototypes for ResumePauseCommand, InterruptPauseCommand. [26/01/04] HJB graphics.h Add include of windows.h [26/01/04] HJB infile.c Removed unused ReadValue2. Add brackets to avoid compiler warnings on dangling elses. Initialize variables to avoid compiler warnings. [26/01/04] HJB langsel.c langsel_mac.c Add include of string.h [26/01/04] HJB molecule.c Add include of graphics.h. Change to %ld format for longs. Remove unused variables. Add brackets to avoid compiler warnings on dangling elses. [26/01/04] HJB molecule.h Add prototype of TestDisulphideBridge. [26/01/04] HJB multiple.c Fix reversed comment terminator. Add include of string.h. Add brackets to initializer to match structure. [26/01/04] HJB multiple.h Add prototype of ReRadius. [26/01/04] HJB outfile.c Initialize variables to avoid compiler warnings. Change to %ld for long. [26/01/04] HJB pixutils.c Initialize variables to avoid compiler warnings. Removed unused variables. [26/01/04] HJB pixutils.h Add prototypes of DrawTwinLine, ClipLine, ClipTwinLine, ClipDashLine, DrawTwinVector, ClipVector, ClipTwinVector, ClipDashVector. [26/01/04] HJB rasmol.c Add parens to avoid compiler warning. [26/01/04] HJB rasmol.h Set version and date. Add include of stdlib.h for malloc. [26/01/04] HJB render.c Change the handling of very long longs to avoid a compiler warning. Use %ld format for longs. [26/01/04] HJB repres.c Remove unused variables. Use %ld format for longs. Initialize variables to avoid compiler warnings. [26/01/04] HJB repres.h Add prototype of LoadDotsFile. [26/01/04] HJB script.c Add include of string.h. Use %ld format for longs. Initialize variables to avoid compiler warnings. Remove unused variables. Fix sign of trailing bits on VRML z coordinates. [26/01/04] HJB script.h Add prototype of WritePOVRay3File. [26/01/04] HJB tokens.h Add parens in definition of IsImageToken. [26/01/04] HJB transfor.c Add parens for logical expression. Remove unused variables. Initialize variables to avoid compiler warnings. [26/01/04] HJB transfor.h Add prototype of DefineShade, RMat2RV, RV2RMat. [26/01/04] HJB wbrotate.c Add include of cmndline.h. Remove unused variables. Initialize variables to avoid compiler warnings. Use %ld format for longs. Add value for a returns that need them. [26/01/04] HJB x11win.c Initialize variables to avoid compiler warnings. Add brackets to avoid compiler warnings on dangling elses. [14/04/02] HJB Imakefile Update to allow scripts to make multiple pixel depths by setting PIXELDEPTH to 8, 16 or 32 externally. Add default flags for various HP architectures. [13/04/02] HJB cif.c Reduce warnings by casting uses of size_t. [13/04/02] HJB cif_ctonum.c Reduce warnings by casting to int for pointers indptr-test. [13/04/02] HJB command.c Reduce warnings by explicit use of long (rather than Long) for fpos, and casting to size_t for comparisons, etc. [13/04/02] HJB infile.c In ProcessPDBBond, match types of srcatm and dstatom by changing from int to Long, casting to size_t for comparisons, etc. [13/04/02] HJB molecule.c Change MemSize from int to size_t. [13/04/02] HJB rasmol.c Change AdviseLen from int to size_t, change socket to xsocket, change __hpux to HPUX_LEGACY [13/04/02] HJB rasmol.h Add HPUX_LEGACY for old style hpux select. [13/04/02] HJB render.c Make test of sizeof(Long) > 4 conditional on not defining _LONGLONG. Make some changes from Long to long, etc. [13/04/02] HJB x11win.c Cast some pointer diffs to int, change some Long to long, etc. [29/06/01] HJB command.c Correct logic for inline load of a new molecule from data file treated as a script. [21/04/01] HJB all Fix credit for initial Spanish translation. Thanks to E. Martz. [19/04/01] HJB command.c Post release fix to handling of load inline in windows version due to problem with STRICT logic. Thanks to Jan Reichert for pointing out the problem. [18/04/01] HJB command.c Post release fix to handling of load inline in UCB multiple molecule environment. Thanks to Jan Reichert for pointing out the problem. Changes from RasMol 2.7.1.1 and 2.7.2 to create RasMol 2.7.2.1: [14/04/01] HJB script.c Correct error in writing scripts with partial use of spacefill. Thanks to Steven Vik for reporting the problem. [14/04/01] HJB rasmol.doc, itasmol2721.hlp, esrasmol.html Updated manuals for 2.7.2.1. [02/04/01] HJB abstree.c, abstree.h Increase space for atom names from 4 to 12 characters. [02/04/01] HJB applemac.c Add symbolic ZRange, add 2 dials. See [12/01/01] changes for langsel. [02/04/01] HJB cmndline.c, cmndline.h Reworked all exits on mouse motion processing to leave values in DialValues or WRot..., etc depending on RotMode. Made HeldButton a global for future reference. [02/04/01] HJB command.c, rasmol.c, rasmac.c, raswin.c Change stereo command to cycle cross-wall-none. [02/04/01] HJB command.c, script.c, transfor.c Rework output of rotation information. [02/04/01] HJB infile.c Increase limit on atom names for CIF from 4 to 12 characters. [02/04/01] HJB langsel.c langsel_mac.c Add French (thanks to Jean-Pierre Demailly ) and Italian (Giuseppe Martini and Giovanni Paolella with contributions by: A. Davassi, M. Masullo, C. Liotto, G. Paolella, G. Martini. Adapt to 2.7.2 menu structure. [02/04/01] HJB mswin31.c Removed "Printing Completed" message. [02/04/01] HJB multiple.c Save DotPtr to fix misplaced dots in multiple molecules. Save LastTX, LastTY, LastTZ, LocalRadius, ShiftS, XlateCen. Make "Insufficient memory" message be language dependent MsgStrs[StrMalloc] [02/04/01] HJB outfile.c, pixutils.c, repres.c Rework backclipping separating ZOffset from new DepthValue, define BitBack [02/04/01] HJB tokens.c Added the following tokens relative to 2.7.2, includes tokens added for 2.7.1.1: ASSE AxesTok ASSI AxesTok CADENA ChainTok CADENAS ChainTok CATENA ChainTok CATENE ChainTok COPY CopyTok DEPTH DepthTok DIBUJO CartoonTok DIBUJOS CartoonTok E AndTok EJE AxesTok EJES AxesTok ELANCE BondTok ELANCES BondTok ELICHE HelixTok ENGLISH EnglishTok ELICHE HelixTok ESQUELETO BackboneTok ETIQUETA LabelTok ETIQUETAS LabelTok ETICHETTA LabelTok ETICHETTE LabelTok FILODIFERRO WireframeTok FILDIFERRO WireframeTok FILI StrandsTok FRENCH FrenchTok GIRO TurnTok GIROS TurnTok GRUPO GroupTok GRUPPO GroupTok HEBRAS StrandsTok IMAGE ImageTok ITALIAN ItalianTok MOSTRAR DisplayTok NASTRO RibbonTok NASTRI RibbonTok PASTE PasteTok POSITION PositionTok RIEMPIMENTO SpacefillTok SALIR ExitTok SCHELETRO BackboneTok SELECTION SelectionTok SHADEPOWER ShadePowerTok SPANISH SpanishTok TODO AllTok TUTTO AllTok VIEW ViewTok VIGNETTA CartoonTok VISUALIZZA DisplayTok [02/04/01] HJB transfor.c Rework interaction of mouse, local rotation and world rotation to make horizontal mouse motion of individual molecule rotate horizontally even when outer world rotation creates a tilt. Restores incremental mouse motion effects similar to what was in effect for 2.7.1, but with world rotations. Reworked RasTop centering to restore 2.7.2 behavior -- defaults to center the new rotation on the screen. [02/04/01] HJB several Make dial indices symbolic. [02/04/01] HJB wbrotate.c, wbrotate.h Rework interaction of mouse and world rotation to make horizontal mouse motion of individual molecule rotate horizontally even when outer world rotation creates a tilt. Changes adopted from RasTop 1.3 in creating RasMol 2.7.2.1: Note: These mods do not reflect the complete source of RasTop 1.3. [31/01/00] PV command.c Added code for selecting atom areas with mouse: changed PickAtom() function name in PickAtoms(); changed PicAtome identifier in PickAtom; added function SelectArea() and DisplayArea(); added code for command "select view" [30/01/00] PV command.c Added command "select view" and corresponding code, which allows to select a part of a molecule based on screen display. [16/01/00] PV cmndline.c In PerformMouseFunc() corrected MM_CLIP to access clipping with the mouse, added MM_DEPT to access backclipping (depth) with the mouse. [16/01/00] PV transfor.h, transfor.c, token.h, token.c, script.c Added ShadePower in DefineColourMap(), which brings some interesting shade variations. Added ShadePowerTok and command "set shade x" with x between -20 to 20. [03/01/00] PV transfor.c Fixed bug (and modified) function Power() to handle Specpower [12/14/99] PV Added variables ShiftS and UseAutoDepthCue that adjust DepthCue with slabbing. [14/12/99] PV transform.c Added function CentreTransform() to either move the origin in the molecule or move the molecule to the origin (origin = True ). Added variables Cenx,y,z, which mesure distance centre-origin. [29/09/99] PV molecule.c Fixed bug in FindCisBonds() (no zeroing of last group cisbondflag); Added ability to convert triple bond to single (CreateBondOrder()) [24/09/99] PV cmndline.c Correlated mouse binding to global variable MouseMode. Removed EnableMenus(state==1) in ResetCommandLine(). Fixed mouse binding with INVERT on y values. Fixed bug on capture status on mouse-up. Added MM_PREV to mouse binding for deselection. Fixed INVERT on y value for mouseup. [21/09/99] PV command.c, render.h, render.c, transfor.h, transfor.c Added four new picking modes: select an atom: PickAtom; select a group: PickGroup; select a chain: PickChain; modify bonding/add multiple bonds: PickBond. Allowed picking parameter shift = -1 when Ctrl key is down to deselect an atom (a group, a chain) from the current selection. [Note by HJB 02/04/01 -- The UCB and 2.7.2 bond picking was used in 2.7.2.1 instead of the RasTop version] [22/09/99] PV abstree.h, abstree.c First step for saving atomsets & identifiers in RasMol scripts (SetSize to 100 and SymEntry and SymbolTable in header). [21/09/99] PV cif.h Fixed missing declaration of cif_parse in cif.h [21/09/99] PV cmndline.c In ProcessCharacter()) added ESC (0x1b) character to interrupt script pausing. [21/09/99] PV command.c Changed output for one-letter-code sequence in series of 50 characters with a space each subgroup of 10. [21/09/99] PV infile.c Compiling problems with RasMol 2.7.1 files (VisualC++ 5.0) - explicited all conversions long to short in infile.c /*casting*/ [21/09/99] PV pixutils.c Compiling problems with RasMol 2.7.1 files (VisualC++ 5.0) - fixed casting in drawstar() and clipstar() in pixutils.c Set ARCSIZE to 32768 under MSWIN, allowing drawing cylinders with radii up to 250 RasMol Units. Current implementation gives a maximum of 75 RU at maximum zooming. Mac implementation should be verified. [14/07/99] PV abstree.c transfor.c (Adapted from RasTop 1.3) Added shortcuts for direct evaluations of atomsets (BuildAtomSet(), SelectZoneExpr()). [14/07/99] PV abstree.c, transfor.c Added shortcuts for direct evaluations of atomsets (BuildAtomSet(), SelectZoneExpr()); gain up to 15 seconds of computer time on very large molecules. [10/07/99] PV cif.c Fixed memory allocation bug in cif_make_handle Changes from RasMol 2.7.1 to create RasMol 2.7.2: [28/08/00] HJB all Updates to comments, resources, etc for preliminary testing release. [21/08/00] HJB abstree.c, abstree.h Change type Atom to RAtom to avoid conflicts with X. Offset all uses of xorg, yorg, zorg databse entried with fxorg, fyorg, fzorg database entries for UCB bond rotation. Change char* strings to unsigned char* strings to allow for extra UCB Angstrom and degree symbols. [21/08/00] HJB applemac.c Change from use of toolbar settings to use of RotMode. Add new "Settings" menu. [21/08/00] HJB cmndline.c Adapt GSG code from UCB mods for mouse moves, to make the moves control bond rotation, molecule rotation, or world rotation, but change from use of toolbar settings to use of RotMode [21/08/00] HJB command.c Add new error message (ErrNoBond) for "Bond for rotation not picked". Add new parameter for alternate conformer bond waist radius. Adapt to fxorg, etc. offsets. Adapt GSG UCB pick bond tool bar button to a command line command. Add show centre, show rotation, show translation and show zoom commands. Add bond, unbond commands. Add rotate bond, rotate molecule, rotate all command. [21/08/00] HJB command.h Add space after "__huge" [21/08/00] HJB font.h Adapt GSG UCB mods characters for Angstrom and degree to be additional symbols, not repalcements. [21/08/00] HJB graphics.h Add new redraw flag, "RFRotBond" to signal that a bond rotation is involved, and add it to RFRotate, RFApply and RFInitial. Add ZRange. Move main X window definitions into this header to facilitate toolbar development. [21/08/00] HJB infile.c, infile.h Change all Atom types to RAtom. Add xorg, etc. offsets on all coordinate calauclations. Move GroupPool definition to header. [21/08/00] HJB molecule.h and all referring files Change type Atom to RAtom to avoid conflicts with X. Add fxorg, fyorg, fzorg database entries for UCB bond rotation offsets. [21/08/00] HJB multiple.c Remove all use of the toolbar, converting to menu. Detect last element of file name string. Update VarList for current variables. Change to ANSI C prototypes. Move revised DrawMoleculeList from GSG's UCB toolbar.c into multiple.c, but drop list only into MolName[]. [21/08/00] HJB wbrotate.c, wbrotate.h Remove all use of the toolbar, converting to menu. Change to ANSI C prototypes. Revise bond and world rotation logic to use full rotation, nor increment, for improved accuracy. Change Bond rotation logic to preserve nesting of bonds without changing the original coordinates. Add database of selected bonds and logic to add bonds on the fly and remove them. [21/08/00] HJB vector.c, vector.h Change to ANSI C prototypes. Replace Vector and Matrix with their array definitions for clarity. [27/02/00] HJB transfor.c, transfor.h Add alternate conformer bond radius to EnableWireFrame [23/02/00] HJB infile.c Fix *- for - typo in XYZ and MOL2 input of coordinates [23/02/00] HJB molecule.c Fix D2O to DOD mapping. Thanks to Brian W. Beck. [23/02/00] HJB pixutils.c New code for alternate conformer bonds. [23/02/00] HJN raswin.c Update WinMail entry to WINAPI [29/01/00] HJB molecule.c Comment out chain by chain reset of bonding to allow for het groups after TER at expense of slower bonding. [29/01/00] HJB mswin31.c Update printer logic for modern windows specs. [29/01/00] HJB rasmac.c Fix reference of monaco font. [15/07/99] HJB (for AR) raswin.c Add check for \r. Thanks for Andrew Raine. [15/07/99] RS raswin.c Add .ML2 and .SY2 extensions for Sybyl and MOL2. Changes adapted from UCB rasmol in creating RasMol 2.7.2: Note: These mods do not reflect the complete source of UCB RasMol. In particular toolbar.h and toolbar.c have not been used in this pass, and the full source of UCB RasMol has not yet been recovered. [30/11/95] GSG rasmac.c Hide command window. Add help screen menu logic. Add hooks to load multiple molecules. Add toolbar menu to Windows menu. Make mouse moves control bond rotation, molecule rotation or world rotation depending on tool bar button choices. Same for scroll bars. [29/11/95] GSG applemac.c Change default background for printing to white. Hook scroll bar H values to bond angle (BRotValue), molecule rotation angle (DialValue[1]) or world rotation angle (WRotValue[1]) depending on toolbar settings. Hook scroll bar V values to molecule rotation angle (DialValue[0]) or world rotation angle (WRotValue[0]) depending on tool bar settings. Allow file open when less than MAX_MOLECULES molecules. [21/08/00] GSG font.h Add characters for Angstrom and degree as replacements for vertical bar and tilde. [16/11/95] GSG render.c, render.h Add PickBond. Add hooks to draw multiple molecules. Automatically switch to the molecule of any picked atom. Add monitor for picked distance, angle or torsion angle. [14/11/95] GSG transfor.c Add hooks for bond rotation and global rotation. [14/11/95] GSG vector.c, vector.h, wbrotate.c, wbrotate.h New routines introduced with UCB mods to allow for bond rotations and global rotation. [14/11/95] GSG infile.c Add fxorg, fyorg, fxorg for MDL molecule input only. [14/11/95] GSG molecule.c, molecule.h Add fxorg, fyorg, fxorg and list of bonds to atom database for world and bond rotation. [11/11/95] GSG multiple.c, multiple.h New routine introduced with UCB mods to allow for multiple molecules. [10/11/95] GSG tokens.c,tokens.h Add MoleculeTok. [10/11/95] GSG repres.h Add flag for units to Monitors. [09/11/95] GSG command.c, command.h Add hooks for multiple molecules. Log background status to allow default white print background. Add molecule command. [09/11/95] GSG rasmol.c Add initialisation for multiple molecules. Changes from RasMol 2.7.1 to create RasMol 2.7.1.1: [21/01/01] FGR, HJB langsel.c, langsel_mac.c, mswin.c, applemac.c Installed translations for Edit menu on mac and PC provided by Fernando Gabriel Ranea. [17/01/01] FGR, HJB langsel.c, langsel_mac.c Corrections to translations by Fernando Gabriel Ranea, installed by HJB with revisions to menu bar accelerators. [12/01/01] HJB applemac.c Added include of langsel.h. Added routine ReWriteStr255 to rewrite menu bar items in place and tostr255 to convert other menu items strings to Pascal form for use in SetmenuItemText. Set up ReDrawWindow to refresh all menu strings and then redraw the menu bar. Note that the rewrite of the main menu bar is _very_ risky and may not survive system changes. [12/01/01] HJB command.c Added include of langsel.h. Remove redundant ErrorMsg array and Err... definitions. Change messages to reference MsgStrs. Add English and Spanish as commands calling SwitchLang. [12/01/01] HJB infile.c Fix coordinate typo in load of XYZ and Mol2 molecules. [12/01/01] HJB langsel.c, langsel_mac.c, langsel.h New routines to carry multi-lingual translations. Many thanks to Fernando Gabriel Ranea for the bulk of the Spanish translations, and for creating the initial Spanish version of RasMol 2.7.1. Note that langsel.c uses the ANSI character set, while lansel_mac.c uses the Macintosh character set. [12/01/01] HJB molecule.c Added include of langsel.h. Changed messages to reference MsgStrs. Refixed D2O misparse, which had been previously fixed. Mod had been lost. [12/01/01] HJB mswin31.c Added include of raswin.idm and langsel.h. Included partial update to printer logic. Added ReDrawWindow as rewrite of menus with ModifyMenu and RemoveMenu/AppendMenu calls. [12/01/01] HJB rasmac.c Added include of langsel.h. Added SwitchLang(English) calls for initialization to main routine. [12/01/01] HJB rasmol.c Add fix for broken math routines by referencing atan2. [12/01/01] HJB rasmol.h Added include of langsel.h. Added SwitchLang(English) calls for initialization to main routine. [12/01/01] HJB raswin.c Added include of langsel.h. Changed font of command window to ANSI character set. Changed most messages to reference MsgStrs. Add SwitchLang(English) calls for initialization to WinMain. [12/01/01] HJB x11win.c Restructured MenuItem and BarItem to make .text, .pos and .len indirect, so that they can be fetched from MsgStrs, MsgAuxl and MsgLens. The .pos field is used to specify the character offset of the acceleration key. The main menu bar may now have non-zero offsets. All the menu items have been changed to MsgStrs[StrM...] referecences, and added include of langsel.h. Added ReDrawWindow simply as a call to ReSizeWindow. This is overkill, but appropriate for these infrequent calls. [12/01/01] HJB tokens.h Added tokens EnglishTok and SpanishTok. [12/01/01] HJB graphics.h Added prototype of ReDrawWindow, a system-dependent call to be used after updating menus on language changes. [12/01/01] HJB cmndline.c Added include of langsel.h, changed prompts as follows: "PDB file name:" MsgStrs[StrPrmtPDB] "Image file name:" MsgStrs[StrPrmtImg] "Molecule file name:" MsgStrs[StrPrmtMol] [12/01/01] HJB tokens.c Added the following tokens: CADENA ChainTok CADENAS ChainTok DIBUJO CartoonTok DIBUJOS CartoonTok E AndTok EJE AxesTok EJES AxesTok ELANCE BondTok ELANCES BondTok ENGLISH EnglishTok ESQUELETO BackboneTok ETIQUETA LabelTok ETIQUETAS LabelTok GIRO TurnTok GIROS TurnTok GRUPO GroupTok HEBRAS StrandsTok MOSTRAR DisplayTok SALIR ExitTok SPANISH SpanishTok TODO AllTok [26/12/99] HJB mswin31.c Do not reset Voxel Data for each chain. [02/10/99] HJB molecule.c Update printer logic. Changes from RasMol 2.7.0 to RasMol 2.7.1.1 include: * Introduction of a multilingual structure for RasMol. * Population of messages and menu lists for English and Spanish. * Upgrade of some of the Windows printer logic * Correction of coordinate handling for Mol2 and XYZ coordinates * Fix to the parsing of D2O. * The ability to automatically mark non bonded atoms in wireframe and stick displays. Our thanks to R. Curtis Haltiwanger for suggesting this change. * The ability to use a proportionally spaced font and to draw labels with heavier strokes. Our thanks to Eric Martz for suggesting this change. * The ability to auto-recognize PDB vs. CIF and mmCIF datasets. * Extensive updating to the manual. Our thanks to William McClure, Margaret Wong, Eric Martz and Frances Bernstein. * Updating the canvas title with the PDB ID code and EXPDTA information, so models will be clearly distinguished from experimental data. Our thanks to Helen Berman for suggesting this change. * The ability to report coordinates. * Additions to the list of pre-defined colours. * Improved accuracy of coordinates in pseudo-PDB output. * Fixes to the centering logic. Changes from RasMol 2.7.0.1 to create RasMol 2.7.1: [15/07/99] HJB documentation Add Dunix binaries. Thanks to David Atkinson [06/07/99] HJB all Release 2.7.1 [05/07/99] HJB documentation Cut-off date for Release 2.7.1 documentation changes. [22/06/99] HJB all source Cut-off date for Release 2.7.1 code changes. [22/06/99] HJB command.c Save fact that a data file was loaded inline. Add processing for star command, all new options for bondmode [all | none | not bonded ] [22/06/99] HJB infile.c Update DataFileFormat after autorecognition. [22/06/99] HJB molecule.h Add MarkAtoms to hold new bondmode flags. [22/06/99] HJB pixutils.c, render.c Add code for new star command. [22/06/99] HJB script.c Add logic to write star command output. Report data loaded as CIF or as inline correctly. Warn users that inline data is not being written out. Check inversion of Y-axis on POVRAY3. Thanks to Curt Haltiwanger for suggesting marking non-bonded atoms on wireframe displays. [22/06/99] HJB transfor.c Add code for new star command, new bondmode options. [18/06/99] HJB pixutils.h, pixutils.c Change name of DisplayString to DisplayRasString to avoid a conflict with X libraries. Add FontWid array to hold character widths (FontSize for FS, FontSize/4 +1 + maximum x position for PS). Add FontStroke logic to write cylinders instead of lines when FontStroke is not zero. [18/06/99] HJB render.c Change name of DisplayString to DisplayRasString to avoid a conflict with X libraries. [18/06/99] HJB repres.c When FonstStroke is non-zero, don't offset character color by (ColourMask>>1), to allow room for color adjustments in cylinder drawing. [18/06/99] HJB script.c Add logic to write PS flag for proportional spacing on set fontsize, and logic to write set fontstroke n. [18/06/99] HJB tokens.c, tokens.h Add tokens for BlueTint (BlueTintTok), Brown (BrownTok), FontStroke (FontStrokeTok), FS (FSTok), Gold (GoldTok), Gray or Grey (GrayTok), GreenTint (GreenTintTok), HotPink (HotPinkTok), Pick as an alternative for Picking (PickingTok), Pink (PinkTok), PinkTint (PinktintTok), SeaGreen (SeaGreenTok), SkyBlue (SlyBlueTok), YellowTint (YellowTintTok) [13/06/99] HJB command.c Change processing of load inline command to work from the currently opened script, saving the file position. Accept HEADER and DATA_... as commands in a script, processing that line and all subsequent lines as a data file, unless a prior load inline command was already done [12/06/99] HJB infile.c When processing a PDB file, test for DATA_... until a non-comment, non-blank line is found. Revert to CIF processing if DATA_... is found. [11/06/99] HJB infile.c In PDB format input extract EXPDTA for Info.technique. In CIF format input accept _audit_block_code for the entry ID, _exptl.method, _diffrn_radiation.probe or _diffrn_radiation_probe for Info.technique. Preserve low order bits of coordinates in xtrl, yrtl, ztrl. On PDB output, report Info.technique in EXPDTA and reinsert low-order bits for coordinates. [10/06/99] HJB abstree.c Add code to report coordinates for show selected cordinates [10/06/99] HJB command.c Recognize new commands, picking coordinates, show selected cordinates. Update default title produced by title command. [10/06/99] HJB molecule.h Add new Info fields for date and technique. Extend identcode to 80 columns. Add CRD to Selection enum type. Add prototype for ReviseTitle. [10/06/99] HJB render.h, render.c Add code to report coordinates for picking coordinates, define PickCoord symbol. [10/06/99] HJB tokens.h, tokens.c Add code recognize COORD, COORDS, COORDINATE, COORDINATES for new CoordTok, DATA_... for CIFDataTok, HEADER for HeaderTok [09/06/99] HJB molecule.c Put PDB entry ID and EXPDTA info into canvas title, report EXPDTA data from Info.technique on reading file. [06/06/99] HJB infile.c Restore the origin on PDB and other outputs. [06/06/99] HJB script.c Change script output to include centering and change various coordinate outputs to restore origins the z-axis orientation. [06/06/99] HJB command.c Add command centre [CenX,CenY,CenZ] to center by offsets from centre of gravity. [03/06/99] HJB render.c Remove call to TranslateToCentre, hold centering in CenX, CenY and CenZ, decoupled from dials, add RFRotate to ReDrawFlag on centering. Thanks to Bohdan Schneider for pointing out the problems with centering. [03/06/99] HJB transfor.c Remove TranslateToCentre, remove processing of CenX, CenY and CenZ from dial values, and put it into computation of ptr->x,y,z Changes after release of RasMol_2.7.0.1: [27/04/99] HJB README.html, Changelog.html, INSTALL.html, manual Add navigation links at top and bottom of each page. Add links for gzipped versions of raswin.hlp, rasmol.hlp. Thanks to E. Martz and Kjeld Olesen. [27/04/99] HJB INSTALL.html, manual Replace empty copy of INSTALL.html in doc/, correct embedded html in manual. Thanks to Kurt Giles. Changes from RasMol_2.7.0 to create RasMol_2.7.0.1: [22/04/99] HJB Announce RasMol 2.7.0.1 on pdb-l@rcsb.org, rasmol@lists.umass.edu, mmciflist@ndbdev.rutgers.edu [11/04/99] HJB *.c, *.h Update all comment blocks for new version and date [11/04/99] HJB abstree.h Realign Pred... to agree with ...Tok to correct misaligned introduced by HJB (not AM) during merge of 2.6x1 into 2.7.0. [11/04/99] HJB tokens.h Fix definition of IsPredTok [09/04/99] HJB molecule,h Make residue identification case-insensitive. Changes from RasMol_2.6.4, RasMol2.6x1 and RasMol_2.6_CIF.2 to create RasMol_2.7.0: [30/03/99] HJB all Cleanup and release of version 2.7.0 [23/03/99] HJB abstree.c Add code to select on alternate conformers. Increase accuracy of torsion angle calculation. [23/03/99] HJB command.c, command.h Make InitHelpFile generally available, change to WriteString for reporting CisBondCutOff for use on mac, report models on show selected. [23/03/99] HJB rasmol.c, raswin.c, rasmac.c Add suggestion for help notice to initial text lines. [23/03/99] HJB script.c In order to support mac introduce WriteBuffer and change all fprintf(outFile, ... to WriteBuffer, provide code from fisipl for Ramachandran printer plot. Handle signs of torsion angles. Thanks to F. C. Bernstein. [23/03/99] HJB tokens.h, tokens.c Add RamPrintTok, RPP, RDF, etc., hook POVRAY3 to the new POVray code. [20/03/99] HJB *.h, *.c In general, the RasMol_2.6_CIF.2 version was used as a base and upgraded with the RasMol_2.6.4 changes. The exceptions are below [20/03/99] HJB infile.c Cell parameters are read with the double routine ReadDecValue from 2.6_CIF.2, rather than ReadValue2 from 2.6.4 Changes from RasMol_2.6 to create RasMol_2.6x1: [15/2/98] AM abstree.c, abstree.h Add PredCisBond, DescribeObj, CalcPhiAngle, CalcPsiAngle, CalcOmegaAngle, shift torsion angle calculations 180 degrees. [15/2/98] AM command.c Add FindCisBonds, CisBondCutOff, show of selected chains, groups, atoms, show and write of phi-psi angles [15/2/98] AM molecule.h, molecule.c Add CIS bond logic [15/2/98] AM rasmol.h, rasmol.c Add USE_FD_SET_TYPE option [15/2/98] AM script.h, script.c Add WritePhiPsiAngles, code for POV-Ray version 3 [15/2/98] AM tokens.h Add CisBondedTok, RamachanTok, CisAngleTok, PhiPsiTok, define PHIPSI, CISANGLE, RAMACHAN, CISBONDED Changes from RasMol_2.6 to create RasMol_2.6.4: [8/2/99] RS command.c, rasmol.c, scripts.c, rastxt.c, raswin.c rasmac.c Final fixup and release of version 2.6.4 [27/12/98] RS *.h, *.c Remove all non-ANSI-C prototypes and ensure use of ( void ) for empty argument lists. Upgrade all procedure delcarations. Convert to use of MSWIN. [27/12/98] RS abstree.c Redo torsion angel calculation. [27/12/98] RS applemac.c Convert to Apple's new routine names [27/12/98] RS cmndline.c, cmndline.h New routine for mouse, keyboard, dials [27/12/98] RS command.c, command.h Move routines for mouse, keyboard, dials to cmndline.c. Redo ParseColour. Reorganize command parsing [27/12/98] RS infile.c Change references to MMIO to MMIOLIB. Pass fp and buffer to FetchRecord as argument. Add ReadValue2, ProcessPDBBond, ProcessPDBUnitCell. Fix recognition of END. Use InvalidateCmndline and UnusedArgument. Write MODEL and ENDMDL records when appropriate [27/12/98] RS molecule.c Reorganize FindResNo as a character-oriented search tree Add Cache. [27/12/98] RS rasmac.c Convert to Apple's new routine names [27/12/98] RS rastxt.c New text-only main program [27/12/98] RS repres.c Add LabelTermnii [27/12/98] RS tranfor.c Add TranslateToCentre [27/12/98] RS transfor.h Reorganize the logic defining DefaultAmbient, making the default value 0.4 instead of 0.6, except for E&S, which is still .05. [27/12/98] RS tokens.c New routine for character-oriented search tree for tokens. [01/08/97] RS infile.c Decreased the maximum valid alpha carbon to alpha carbon distance to 4.2 Angstroms from 7.0 Angstroms. Thanks to Kostas Sfyrakis and Harren Jhoti. [15/04/97] RS molecule.c repres.c Fixed a bizarre feature in the OpenVMS compiler that complained about "a=*b" as "=*" operator is an obsoltete form and may not be portable. Special thanks to Remington Stone. [28/11/96] RS rasmol.h rasmol.c Several minor fixes to compile RasMol under VMS. Special thanks to Adam Ralph (and CCP4). Changes from RasMol_2.6_CIF(Rev 1) to create RasMol_2.6_CIF(Rev 2): [24/2/99] HJB Release of RasMol_2.6_CIF(Rev 2) at http://www/bernstein-plus-sons.com/software/rasmol and announce to mailing lists. [21/2/99] HJB cif.h Add prototypes of cif_make_handle, cif_read_file, cif_make_file, cif_save_character to avoid compiler warnings [21/2/99] HJB cif_ctonum.c Remove unneeded values.h [21/2/99] HJB cif_ctonum.h Correct prototype [21/2/99] HJB infile.c Add cif_ctonum.h, define LoadCIFMolecule prototype, initialize ch, add return to avoid compiler warnings. [21/2/99] HJB abstree.c, cif.c, cif_ctonum.c, command.c, infile.c, molecule.c Use string_case.h instead of for IBMPC, VMS and APPLEMAC. [21/2/99] HJB rasmol.h Update version, add some definitions from R. Sayle's 2.6.4 in preparation for 2.7.0. [21/2/99] HJB rasmac.c, rasmol.c, raswin.c Update reported date on startup. [21/2/99] HJB render.c Add cif_fract.h to avoid compiler warnings. [21/2/99] HJB string_case.c Replace garbled version, provide string_case.h. [21/2/99] HJB script.c Initialize first, last, radius, to avoid compiler warnings [21/2/99] HJB transfor.c Initialize min and max to avoid compiler warnings. [10/1/99] HJB Release of RasMol_2.6_CIF(Rev 1) at http://www.bernstein-plus-sons.com/software/rasmol and announce to mmCIF mailing list. [9/1/99] HJB cif.c Change toupper calls to ToUpper calls. [8/1/99] HJB command.c Add argument to CreateMoleculeBonds to force zapping on connect. [8/1/99] HJB infile.c Log requested bonds which cannot be made in NullBonds and report to users, add RightJustify to right-justify residue names, recognize _atom_site_disorder_group for small molecule alternate conformerse, recognize bonds which don't have either atom names or atom numbers. [8/1/99] HJB molecule.c Add argument to CreateMoleculeBonds to force zapping on connect. [8/1/99] HJB molecule.h Add argument to CreateMoleculeBonds to force zapping on connect, add NullBonds to log requested bonds which cannot be made. [8/1/99] HJB mswin31.c Use VERSION to construct window title. [8/1/99] HJB outfile.c Use VERSION to construct Postscript output file header. [8/1/99] HJB rasmac.c Use VERSION to report version on startup. [8/1/99] HJB rasmol.c Use VERSION to report version on startup. [8/1/99] HJB raswin.c Use VERSION to report version on startup. [8/1/99] HJB script.c Use VERSION to construct various output file headers. [8/1/99] HJB x11win.c Use VERSION to construct window title. Changes from RasMol_2.6 to create RasMol_2.6_CIF: [22/12/98] HJB Preliminary release of RasMol_2.6_CIF at http://www.bernstein-plus-sons.com/software/rasmol [19/12/98] HJB command.c correct handling of internal help files under windows, and allow for unix help files on a mac. [18/12/98] HJB Makefile.in, Imakefile Update for CIF support. [09/12/98] HJB infile.c Cummulative changes for fractional coordinates, CIF. [09/12/98] HJB command.c Changes for alt, model labels, colour schemes, CIF. [09/12/98] HJB molecule.h Cummulative changes for fractional coordinates, new colour schemes, CIF. [09/12/98] HJB molecule.c Cummulative changes for fractional coordinates, new colour schemes, CIF. [09/12/98] HJB x11win.c Update comments, menus and version text. [09/12/98] HJB mswin31.c Update comments, output file commentary. [09/12/98] HJB outfile.c Update comments, output file commentary. [09/12/98] HJB script.c Update comments, output file commentary. [09/12/98] HJB rasmol.c Update comments, output file commentary. [04/12/98] HJB pixutils.c Update comments, code to stripe bonds for alternate conformers. [04/12/98] HJB pixutils.h Update comments, protytpes to stripe bonds for alternate conformers. [04/12/98] HJB rasmac.c Update comments, adjust code for current Metrowerks compiler. [04/12/98] HJB raswin.c Update comments, adjust code for current Metrowerks compiler. [04/12/98] HJB tokens.h Update comments, tokens for alt, model colours. [04/12/98] HJB transfor.c Update comments, add code for alt, model colours. [04/12/98] HJB transfor.h Update comments, prototypes for alt, model colours. [23/11/98] HJB abstree.c Add code for %A, %M specifiers, divide u/l case. [22/11/98] HJB cif_fract.c New routine, derived from cif2pdb by H.J. Bernstein and F. C. Bernstein. [22/11/98] HJB cif_fract.h. New header for cif_fact.c. [22/11/98] HJB cif_stx.c New routine, derived from P. Ellis CBFlib parser. [23/11/98] HJB render.c Update comments, add code to stripe bonds for alternate conformers. [23/11/98] HJB repres.c Update comments, add code to stripe bonds for alternate conformers. [09/09/98] HJB cif_ctonum.c New routine, derived from ciftbx by S. R. Hall and H. J. Bernstein. [09/09/98] HJB cif_ctonum.h New header for cif_ctonum.c. [18/08/98] HJB cif.h New header for cif.c, derived from CBFlib by P. Ellis and H. J. Bernstein. [18/08/98] HJB cif.c New routine derived from CBFlib by P. Ellis and H. J. Bernstein. [14/08/98] HJB rasmol.c Added hooks for termio for Linux. These changes are similar to, but not identical to the FreeBSD hooks. See the linux conditionals. -- H. J. Bernstein Other Changes The complete version 2 change history is in the directory ChangeLog ----------------------------------------------------------------------------------------- | OpenRasMol | Copying and Distribution | Contents | Installation Instructions | | Changes | Things To Do | Introduction | Source Code and Binaries | | RasMol Manual | Spanish Translation of RasMol Manual | Italian Translation of RasMol Help File | | Donate to Support RasMol | Release README | Register your RasMol | ----------------------------------------------------------------------------------------- Updated 19 July 2009. Herbert J. Bernstein Bernstein + Sons, 5 Brewster Lane, Bellport, NY 11713-2803, USA yaya@bernstein-plus-sons.com References Visible links . http://www.iucr.org/iucr-top/welcome.html . http://www.iucr.org/iucr-top/cif/home.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html . http://www.openrasmol.org/ . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#Copying . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#Contents . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/INSTALL.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/ChangeLog.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/TODO.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#Introduction . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#CodeAndBinaries . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/rasmol.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/esrasmol27.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/itrasmol.hlp . http://www.rasmol.org/donate.shtml . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html . http://www.rasmol.org/register.shtml . http://www.rasmol.org/software/RasMol_Latest_Windows_Installer.exe . http://www.rasmol.org/software/RasMol_Latest.tar.gz . http://www.rasmol.org/software/RasMol_Latest_Manual.html . http://www.rasmol.org/donate.shtml . http://www.rasmol.org/register.shtml . http://www.rasmol.org/software/RasMol_2.7.5_Windows_Installer.exe . http://www.rasmol.org/software/RasMol_2.7.5.tar.gz . http://www.rasmol.org/software/RasMol_2.7.5_Manual.html . http://www.rasmol.org/donate.shtml . http://www.rasmol.org/register.shtml . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/NOTICE.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/ChangeLog/ . http://www.openrasmol.org/ . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#Copying . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#Contents . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/INSTALL.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/ChangeLog.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/TODO.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#Introduction . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html#CodeAndBinaries . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/rasmol.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/esrasmol27.html . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/doc/itrasmol.hlp . http://www.rasmol.org/donate.shtml . file:///usr/public_ftp/yaya/software/rasmol-2.7.5-17Jul09/README.html . http://www.rasmol.org/register.shtml