Appendix

List of selected commands

In this appendix you will find a list of commands that can be found throughout WHAT IF. This list is far from complete. Also, the fact that several commands occur multiple times indicates that they occur in multiple menus, and do some things related in spirit, but different in details.

This list is guaranteed not up to date. It was last updated on June 14 1997.

   HELP    Gives help about option
   INFO    Gives extensive help about option
   SHELL   Opens a system shell
   GENOPT  Looks at all the other general options
   END     Goes back to the previous menu
   $..     Execute a shell command directly
   %..     Executes commands from a different menu
   !..     Repeat a previous command
   SCRIPT  Executes commands from a script file
   DOLOG   Opens the log-file
   NOLOG   Closes the log-file
   GO      Passes control from the text window to the graphics window
   FULLST  Ends WHAT If execution the neath way
   HISTOR  Show the options you recently executed
   GRAFIC  Brings you to general menu to use the graphics window
   GRATWO  Brings you to menu to do two dimensional graphics
   GRAEXT  Brings you to menu for fancy graphics
   COLOUR  Brings you to menu to colour atoms/residues
   PLOTIT  Brings you to the menu from which to make plots
   PORNO   Brings you to the menu from which to use the sexy graphics options
   ITMADM  Brings you to the menu for the administration of MOL-objects/items
   LABEL   Brings you to the atomic labeling menu
   SOUP    Brings you to soup manipulation menu
   3SSP    Brings you to the 'superpose on all' menu
   ACCESS  Brings you to menu for accessibility calculations
   ANACON  Brings you in the contact analysis menu
   BUILD   Brings you to the residue building menu
   CHECK   Brings you to the structure validation menu
   CHIANG  Brings you to torsion-angle menu
   CLUFAM  Brings you in the clusters and families menu
   DGLOOP  Brings you to 3d fragment database menu
   DIGIT   Allows you to regenerate coordinates from stereo figures
   DOSELF  Allows you to do WHAT IF management things (write help, etc)
   DRUG    Brings you to the drug-design, docking, FLEXX interface, menu
   DSSP    Brings you to the menu to work with DSSP (or its emulator)
   ELECTR  Brings you to the menu to work with DelPhi (electrostatics)
   EXTRA   Brings you to a menu that does some other funny things
   HBONDS  Brings you in the hydrogen bonds menu
   HSSP    Brings you in the menu to work with HSSP files
   MAP     Brings you to map handling menu
   NEURAL  Brings you to the neural network toy menu
   NMR     Brings you to the NMR menu
   NOTES   Brings you to menu to make notes
   OTHER   Brings you to the yet another menu that does funny things
   QUALTY  Brings you to the quality control menu
   REFINE  Brings you to amino acid refinement menu
   SCAN3D  Activates the realtional protein database module
   SCNSTS  Allows you to do statistics on SCAN3D and DGLOOP groups
   SEARCH  Brings you to menu to search in the soup 
   SELECT  Brings you to the menu to select proteins for SCAN3D
   SEQ3D   Brings you to the menu to regenerate the internal database
   SETPAR  Brings you in the menu to change parameters
   SETVDW  Brings you in the Van der Waals radius menu
   SHAKE   Brings you to the menu to build molecules ab-initio
   SHOENT  Brings you to the menu to look at the internal database
   SPCIAL  Brings you to the 'special' menu (undocumented options)
   SUPPOS  Brings you to the superposition menu
   SYMTRY  Brings you to menu to work with symmetry
   TABLES  Brings you in the spread sheet menu
   WALIGN  Brings you to the menu to work with sequences
   WATER   Brings you to menu to work with water molecules
   XRAY    Brings you to the menu with xray options
   GROMOS  Brings you to menu to work with the GROMOS EM/MD program
   ANATRA  Brings you in the trajectory analysis menu
   ESSDYN  Brings you to the essential dynamics menu
   TRAMOV  Brings you to the MD trajectory movie menu
   CONOLY  Brings you to the Connolly software interface menu
   GRID    Brings you to menu to work with Goodford's GRID program
   START   Read crambin from the internal database
   GETMOL  Reads a PDB file
   GETMLS  Reads a series of PDB files
   DEMOS   Start the demonstration option
   LISTA   List atomic information for one residue range
   LISTAA  List atomic information for multiple residue ranges
   LISTR   Lists all residues in the soup
   LISTRR  List the names and numbers of residues
   SHOPAT  Searches for user defined tri-petides
   APROPO  Get writeup in hypertext window
   MAN-K   Search for a keyword in all SHORT helps
   FIND    Finds an option for you if you only know its name
   SHORT   Gives short help about all options in a menu
   SHORTT  Gives short help about all general options
   NOVICE  Activate that HELP will be automatic with every option
   $       Prefix for operating system commands
   %       Prefix for commands in another than the present menu
   NEWMOD  Activates WHAT IF version 5.0 (bugged)
   OLDMOD  Deactivates version 5.0
   ENGLIS  Let WHAT IF continue in English
   DUTCH   Let WHAT IF continue in Dutch
   FRENCH  Let WHAT IF continue in French (prompt only...)
   SPANIS  Let WHAT IF continue in Spanish (prompt only...)
   SETWIF  Change an internal program parameter
   SHOWIF  Displays the value of a program parameter
   MUTATE  Mutate one residue
   MUTZON  Mutate all residues into one same residue type
   MUTSLF  Mutates a range of residues to alanine and back to what it was
   SUGMUT  Suggests mutations for a series of residues
   TRYMUT  Tries to optimise the sequence for a structure
   DEBUMP  Debump one residue
   DEBHBO  Debump residues, optimising H-bonds while at it
   DEBALL  Debump multiple residues
   DEBTRS  Debump residues by translations of whole residues
   IUKKEL  Switches on the flag that makes SAVSOU automatic every 10 options
   > <     Prefixes for renaming commands, using renamed commands
   ! or .  Prefix for repetition of an old command
   MAKSCR  Get demo script for ab initio building in present directory
   TEACH   Activates TEACH mode (needed for teaching scripts
   MYMENU  Activates your menu (if you made one)
   EDT     Gets a file in the editor of your choice
   ANGLE3  Calculates angle between 3 atoms
   DIST    Calculate distance between two atoms
   DSTOFF  Deactivates continuously updates distances in graphics window
   MINMAX  Determine extremes of a residue range
   SHOCEL  Shows all coordinate and map cell dimensions.
   TIME    Shows present date and time
   CENXYZ  Send an centering command to the graphics screen
   CHESS   Play chess with WHAT IF
   CHOOSE  Select predefined ranges for future options
   NEWRNG  De-activates the CHOOSE selected ranges
   RENUMB  Renumber residues
   TRAROT  Translate and rotate residue ranges
   LSCRIP  Run a script over a series of PDB files
   WAIT    Holds execution till the author hits RETURN (meant for scripts)
   PAUSE   Holds execution for a number of seconds
   BUTON   Switch-on one of the 36 buttons at the bottom of the screen
   BUTOF   Switch-off one of the 36 buttons at the bottom of the screen
   STEREO  Toggles stereo on/off
   ROCK    Toggles ROCK on/off
   SIMPLE  Toggles the automatic MOL-object/item administration on/off
   SMPLON  Switches SIMPLE mode on
   SMPLOF  Switches SIMPLE mode off
   ECHOSC  Shows a given text in the text window
   AUTOON  Toggle command logging in script file on
   AUTOOF  Toggle command logging in script file off
   MODEF   X11 only: switch on fast graphics mode
   MODES   X11 only: switch on slabbing
   MODEC   X11 only: switch on depth cueing
   MODEP   X11 only: switch on perspective view
   LSTOPN  List files that WHAT IF has open at this moment
   PREGMX  Go to the GROMACS menu
   INIALL  Restart WHAT IF
   FOOOOD  Show date and time
   TOGGLI  Toggle an ICONFI flag (dont use!)
   SHOIRF  Show all ICONFI flags
   SHOBUT  Shows status of the 36 buttons at bottom of graphics window
   STYPEA  Show type-ahead buffer
   MOL200  Run the soup-verification and correction procedure 
   SETEDT  Allows yo to choose another default editor
   GRFAIC  Alternative spelling for GRAFIC
   SPECIA  Alternative spelling for SPCIAL
   QUALIT  Alternative spelling for QUALTY
   SIMPEL  Alternative spelling for SIMPLE
   LESS    Generally undoes the action of MORE
   RESET   Equivalent to INIGRP or GRPINI (in DGLOOP or SCAN3D)
   QUIT    Keep executing END till the main menu is reached again
*
*       MYMENU module messages
*
   MYOPT1  Executes my first option
   MYOPT2  Executes my second option
*
*       GROMACS module messages
*
   GMXPAR  Enters the GROMACS parameter menu
   MAKTPB  Makes a GROMACS coordinate file and binary topology file
   MAKBOX  Same as MAKTPB, but including solvent/ions
   GMXFEM  Same as MAKBOX + energy minimisation of the system
   GMXFPR  Same as FASTEM + position restrained MD (startup) run
   GMXFMD  Same as FASTPR + continuation MD run
   CUTOF1  The short range cut-off radius
   CUTOF2  The long range cut-off radius
   EMSTPS  Number of steps in energy minimisation
   PRSTPS  Number of steps in position restrained MD (startup)
   MDSTPS  Number of steps in continuation MD
   WRTFRQ  Frequency of writing various properties to output file
   XTCFRQ  Frequency of writing trajectory frames to XTC file
   DELH2O  Flag to select whether remote waters should be removed
   BOXDIS  Minimum distance from protein to any edge of box
   INTLEV  Level of interaction
   FIXPAR  Level of position restraining
   FIXFGM  Force of position restraining
   RESUSE  Use external distance restraining file or not
   BOXLEV  Level of box usage
*
*       3SSP module messages
*
   MAK3SP  Creates a 3ssp file
   SUM3SP  Makes a summary of a 3ssp file
   PARAMS  Activates the 3SSP related parameter menu
   GRA3SP  Puts the hit fragments in the movie
   GRL3SP  Puts the hit fragments in a MOL-item
   GRF3SP  Puts one fragment set from one hit in a MOL-item
   GRD3SP  Puts one entire molecule with hits in a MOL-item
   GRW3SP  Puts whole molecules of hits in the movie
   GRI3SP  Interleaves whole molecules and hits in the movie
   GRM3SP  Puts whole molecules of hits in MOL-item
*
*       ACCESS module messages
*
   INIACC  Resets solvent accessibilities to zero
   SHOACC  Does some accessibility statistics
   SETACC  Calculates solvent accessibilities
   INIENV  Cleans the environment information
   VACACC  Calculates the accessibility for residue in vacuum
   ACCDIF  Calculate accessibility because of ligand binding
   ACCTAB  Makes a table out of residue accessibilities
   ACCALA  Calculates C-beta accessibility after mutating to alanine
   ANASRF  Analyses buried and accessible surface
   PARAMS  Brings you in the accessibility parameter menu
   SHOPAR  Shows accessibility related parameters
   SHOENV  Shows which molecules are in the environment
   ACCGRA  Puts accessible dot surface at the graphics
   VDDGRA  Puts Van der Waals dot surface at the graphics
   NEWENV  Does the same as INIENV. Needed for compatibility.
   CLNACC  Does the same as INIACC. Needed for compatibility.
*
*       TRAMOV module messages
*
   TRAGRA  Puts a trajectory in the movie
   TRAGRL  Puts the entire trajectory in a MOL-item
   TRA1AT  Follow one atom through the trajectory
   TRASPH  Puts a sphere throughout the trajectory in the movie
   TRAHBO  Puts a trajectory plus h-bonds in the movie
   TRACEN  As TRAGRA, but centered on one specified atom
   TRARIB  Makes a spline movie (CPU intensive)

   USETOT  Mark all atoms in the soup for the follow option
   USEALL  Mark all atoms in residues for the follow option
   USECA   Mark all alpha carbons for the follow option
   USEWAT  Add waters to the follow option
   FOLLOW  Follows multiple atoms through the trajectory
   LOOPER  Loops through the movie

   BNDBND  Makes sure that bonds over boundary are not displayed
   AMBER   Swich default trajectory style to Amber
   PARAMS  Brings you in the ANATRA parameter menu
*
*       ANATRA module messages
*
   ANADST  Calculate one distance throufg a trajectory
   ANAHBO  Analyse a hydrogen bond during the trajectory
   ANAVOL  Determine the volume ocupied by an atom in a trajectory
   ANASUS  Analyze water protein contacts in a trajectory
   TRACNT  Counts the steps in a trajectory
   TRARMS  Makes a movie of RMS deviations during a movie
   TRASCR  Executes a script file on a trajectory
   PARAMS  Brings you in the ANATRA parameter menu

   WADINI  Initialises the Whatif Analysis of Dynamics options.
   WADALL  Performs a full-check of a trajectory.
   WADISC  Clears the analysis scipt.
   WADSSC  Shows the analysis script made sofar.
   WADEXE  Runs the trajectory analyses described in the script.
   WADANA  Analyzes the TRAGEO results.

   WADDIS  Adds a distance query to the script.
   WADANG  Adds an angle query to the script.
   WADTRS  Adds a torsion angle query to the script.
   WAD1HB  Adds a single hydrogen bond query to the script.
   WAD1PP  Adds a single residue PHI/PSI query to the script.
   WADGYR  Calculates the radius of gyration.
   WADGRO  Gets a coordinate file from the trajectory.

   WADHST  Monitors secondary structure.
   WADHBO  Monitors the total number of backbone hydrogen bonds.
   WADDIH  Monitors the total number of non-allowed phi/psi combinations.
   WADACC  Monitors the total accessibility.
   WADFLC  Calculates B-factors from the trajectory.
*
*       Messages for the BUILD menu
*
   NBLD    Adds one residue n-terminal of existing one
   CBLD    Adds one residue c-terminal of existing one
   INIBLD  Start building new molecule
   CBLDS   Adds residues c-terminal of existing one
   NEWBLD  Builds structure from sequence + sec. struc. pred.
   OPTCYS  Optimize cys-cys bridges after NEWBLD
   FILGAP  Dreams up residues to fil a gap
   DENFIT  Optimizes one residue with respect to density
   DENFTS  Optimizes residue range with respect to density
   SETPOS  Puts a secondary structure element at a user given positie
   PARAMS  Brings you to the BUILD parameter menu
*
*       CHECK menu messages
*
   FULCHK  Executes ALL know check options. Results as LaTeX file
   FSTCHK  As FULCHK, but uses a file to determine which checks to run

   ACCCHK  Analyses the accessible and buried surface areas
   ANGCHK  Checks bond angles
   AXACHK  Looks for atoms that are near symmetry axes
   BBCCHK  Backbone conformation normality check
   BMPCHK  Looks for too short interatomic distances
   BNDCHK  Checks bond distances
   BPOCHK  Search for buried unsatisfied H-bond donors/acceptors
   C12CHK  Check of chi-1/chi-2 
   CHICHK  Evaluates torsion angles
   CHNCHK  Verifies the chain names
   CRDCHK  Checks for rounded coordinates
   FLPCHK  Looks for potentially flipped peptide planes
   H2OCHK  Does several checks on water positions
   HNDCHK  Looks for atoms with the wrong hand
   HNQCHK  Looks for flips of H, N, and Q residues using H-bonding
   INOCHK  Check inside/outside distribution of residue types
   MVMCHK  Matthews coefficient (Vm) and other cell volume checks
   NAMCHK  Does a nomenclature check
   NCSCHK  Checks non-crystallographic symmetry
   NEWCHK  Throw away the old summary file
   NQACHK  Does new packing quality control
   OMECHK  Verify omega angle distribution
   PLNCHK  Check protein side chain planarity
   PL2CHK  Check atoms connected to aromatic rings for planarity
   PL3CHK  Uncalibrated planarity check for DNA/RNA or protein with H atoms
   PUCCHK  Verifies ring puckering in Proline residues
   QUACHK  Does packing quality control
   RAMCHK  Calculates Ramachandran Z-score
   ROTCHK  Looks if the residues rotamer is normal
   SYMCHK  Checks the symmetry information in a PDB file
   WGTCHK  Atomic occupancy check
   XBFCHK  B-factor checks
*
*       CHIANG module messages
*
   SHOCHI  Shows torsion angles
   EVACHI  Evaluates torsion angles
   SETCHI  Sets one torsion angle in one residue
   RNGCHI  Sets one torsion angle in a whole range of residues
   CYSCHI  Calculates torsion angles in cys-cys bridge
   VOLCHI  Calculates chiral volumes
*
*       FAMCLU module messages
*
   INICLU  Delete all clusters
   SETCLU  Manually define a cluster of residues
   SHOCLU  Lists all clusters
   HYDCLU  Create a cluster of buried hydrophobic residues

   INIFAM  Delete all families
   SHOFAM  Lists all families
   SETFAM  Create a family
   DELFAM  Delete a family
*
*       COLOUR module messages
*
   COLATM  Set default atom colours
   COLTYP  Colour residues of certain type(s)
   COLBFT  Colour atoms by B-factor
   COLFAM  Colour whole families
   COLCLU  Colour whole clusters
   COLETM  Colour atoms by energy term
   COLHST  Colour residues by secondary structure
   COLPRP  Colour residues by property
   COLROW  Colour by parameter correlation row
   COLATV  Colour by atomic value
   COLSPC  Colour residues according to predefined schemes
   COLREF  Colour residues as function of geometric errors
   COLBB   Colours the backbone
   COLMOL  Colours one molecule
   COLH2O  Colours all waters
   COLRNG  Set the extremes of colour ranges
   COLZON  Colour one range of residues
   COLZNS  Colour zones of residues
   COLACC  Colour as function of accessibility
   COLABF  Colour by residue averaged B-factor
   COLTAB  Colour residues as function of a table value
   COLSCH  Colours side chains
   COLBIN  Divides colours over equally populated bins
   COLHSP  Colour as function of variability in HSSP file
   COLSMC  Colour as function of symmetry contacts in crystal
   COLREP  Replaces one colour in the soup by another
   COLSHF  Shift a range of colours
*
*       ANACON module messages
*
   CONRES  Makes the contact matrix for residues
   RSCACA  As CONRES, but based on alpha carbon distance
   RSCBCB  As RSCACA, but based on beta carbon distance
   CONATM  Makes the contact matrix for residues and atoms
   CONHAN  Makes residue contact matrix coloured by hand
   CNTRES  Counts residue contacts
   CNTATM  Counts atomic contacts
   LSTATC  List all contacts for one atom
   SHOSBR  Show salt bridges
   SHOPAR  Shows the parameters relevant for this module
   PARAMS  (Re-)sets the parameters relevant for this module
   CONTPS  Draws + lists all contacts between types of residues
   CONTYP  Draws + lists all contacts between types of residues
   CONTAC  Lists all interatomic contacts
   CONDBL  As CONTAC but list contacts in both directions
   BUMPS   Lists all atomic bumps
   BMPTAB  Make a table of all bumps
*
*       DGLOOP module messages
*
   DGFIND  Finds matching fragments. No constraints
   DGFIX   Finds matching fragments with same central residue
   DGMUT   As DGFIX, but with mutated central residue
   DGREP   After DGMUT, DGREP puts new residue in the soup
   DGINS   Finds loops that can be inserted, backbone only
   DGINSS  As DGINS, but with sequence constraints
   GRPSHO  Show all groups presently available
   DGSHOW  List the hits at the terminal
   PARAMS  Menu to change DG*** parameters
   RESPAR  Resets DG*** parameters
   TIGHT   Tightens DG*** parameters
   RELAX   Relaxes DG*** parameters
   SHOPAR  Shows DG*** parameters
   GRPINI  Re-initiates all groups
   LENSET  Re-sets the length of the groups
   DGRN-N  Finds rotamers for all types at many positions
   DGR1-N  Finds rotamers for one type at many positions
   DGRN-1  Finds rotamers all types at one position
   DGRSLF  Executes DGR1-1 over a range of residues
   DGROTA  Finds rotamers for one type at one position (=DGR1-1)
   DGRS-N  Displays best rotamer at range of positions
   DGGRA   Puts hits in the movie
   DGGRAL  Puts hits in a MOL-item
   ALTOCA  Converts complete residues into just alpha carbons
   CATOAL  Converts alpha carbons into residues
   DGR1-1  Finds rotamers for one type at one position (=DGR1-1)
*
*       2D-3D module messages
*
   DIGPBM  Reads PBM file (scanned stereo image of protein)
   DIGPGM  Reads PGM file (scanned stereo image of protein)
   DIGXFI  Read Xfig digitized output
   DIGGRA  Display digitized PBM file

   DIGSHO  Show digit parameters
   DIGRAT  Set ratio between 2D and 3D constraints for optimizing
   DIGC12  Set optimal distance between adjacent Ca atoms
   DIGC13  Set minimal distance between 1-3 Ca atoms
   DIGSTA  Set stereo angle used by DIG2T3
   DIGNRS  Set number of residues to be refined at the same time
   DIGLWI  Set line width used for integration
   DIGSCL  Select scale parameters for refinement 

   DIG2T3  Reconstruct initial 3D from 2D coordinates
   DIGOPT  Optimise 3D coordinates with 2D and 3D restraints
   DIGTGT  Tighten 3D restraints on Ca-Ca distances
   DIGREL  Relax 3D restraints on Ca-Ca distances
   DIGSH2  Show current 2D coordinates in the XFIG coordinate system

   DIGPDB  Write 3D coordinates to a PDB file
*
*       DOSELF module messages
*
   CHKMES  Translates/corrects Dutch lines in MESSAGES.TXT
   COUNTR  Counts source code statistics over WHAT IF modules
   DOCUWI  Put text for placeholders in a WHAT IF source module
   PRETTY  Prints a WHAT IF source module nicely readable
   RUNOFF  Emulates RUNOFF for one chapter of the writeup
   RUNALL  As RUNOFF but for many chapters
   SEEWPL  Lists a MOL-item formatted at the terminal
   TEXALL  As for RUNALL, but produces also TEX output
   TEXONE  As for TEXALL, but now for only one RUNOFF file
   WIFPAR  Checks which WIFPARs are used, and how often
   DOCDON  Lists subroutines that are not yet in chap83
*
*       DRUG module messages
*
   GETCSD  Read a drug from a CSD type file
   GETML2  Read a drug from a TRIPOS MOL2 file
   DRGTOP  Make a topology entry for a drug

   WIDOCK  Dock a drug, using the WHAT IF dock algorithm
   DCKOPT  Localised drug docking, using the WHAT IF dock algorithm
   MANDCK  Manually dock a drug, with continuous energy monitoring
   LIGIN   Dock a rigid small molecule using Sobolev's algoritm
   INIFLX  Initialize some flex files (cavity file, etc). Interactive.
   ANIFLX  Initialize some flex files (cavity file, etc). Automatic.
   FLEXX   Dock a flexible small molecule using FLEXX

   INIDDB  DOCKDB gets started (should be done first, but only once)
   SUBSTR  DOCKDB Substructure search via smiles-code
   SUBFRA  DOCKDB Substructure search via fragment name
   FNDCAA  DOCKDB Find pairs of contacting residues
   FNDPDB  DOCKDB Find (and display) a PDB file
   LSTDDB  DOCKDB List of searchable PDB files
   GETFLX  DOCKDB Initialize for DOCKDB usage of FLEXX
   GETDDB  DOCKDB Load file from database
   FNDCPX  DOCKDB Demonstration command
   DDBVQL  DOCKDB interactive VQL query
*
*       ESSDYN module messages
*
   WEDALL  Performs a full automatic ED analysis
   WEDTRA  Reads trajectory files, creates 1 fitted trajectory file
   WEDEIG  Constructs & diagonalizes covariance matrix
   WEDPRJ  Projects trajectory onto eigenvectors
   ANWTRA  Analyzes WEDTRA output
   ANWEIG  Analyzes WEDEIG output
   ANWPRJ  Analyzes WEDPRJ output
   PRNSEL  Flag to select output (screen/printer)
   WEDSEL  Parameter: determines which atoms should be used for ED
   SELMAS  Fitting with center of mass vs. geometrical center
*
*       EXTRA module messages
*
   FOLD01  determines accessibility change upon local folding
   FOLD02  determines accessibility change upon global folding
   FOLD03  makes a pairwise accessibility reduction matrix
   RANDOM  randomizes atomic coordinates a little bit
   RANALL  totally rondomizes atomic coordinates
   FLDCON  makes a window vs outside-window contact plot
   HELANG  determines angle between two helices
   HELANS  determines all inter helical angles in a molecule
   HLANDB  determines all inter helical angles in the database
*
*       GRAFIC module messages
*
   SHOALL  Displays all residues.
   SHOTOT  Displays all residues, drugs and waters.
   ZONES   Shows zones of residues, drugs or waters.
   SPHERE  Puts a sphere from the soup in a MOL-item.
   GRACA   Draws a alpha carbon tracing.
   GRABB   Draws backbone (plus beta carbon) tracing.
   GRASCH  Draws side chains.
   CASCH   Combines GRACA and GRASCH.
   SPHZON  Combines SPHERE and ZONES (for one zone).
   GRAACC  Creates an accessible dot surface.
   GRAVDD  Creates a Van der Waals surface.
   SPLINE  Creates a spline (=smooth ribbon with arrows and cylinders).
   POTH2O  Draws potential waters around an amino acid.
   GRASBR  Draws salt bridges.
   GRACLU  Draws one cluster.
   CROSS   Toggle between diverging and cross-eye stereo.
   ACON    Sets the center of graphics at an alpha carbon.
   LINEWI  Changes the linewidth (SG only)
   CENTER  Centers the graphics on the center of the soup.
   NOMODL  Switches the working model off.
   TOGGL2  Makes two MOL-objects flash alternatingly.
   OPTVIE  Changes the coordinates in soup such that SHOALL is optimal
   SETVIE  Allows interactive setting of some viewing parameters.
   SHOVIE  Displays the most crucial viewing parameters.
   DIRECT  Toggles the direct graphics mode on/off.
   UNDISP  In direct mode only: removes residues from screen.
   DSHBND  Toggles dashed bond mode on/off.
   DBLBND  Toggles double bond mode on/off.
   INIGRA  Deletes all MOL-items and MOL-objects.
   INIOBJ  Deletes one MOL-object.
   ROTY+6  Rotates the whole screen +6 degrees around the Y axis.
   ROTY-6  Rotates the whole screen -6 degrees around the Y axis.
   XONLY   Allows for rotations around X only.
   YONLY   Allows for rotations around Y only.
   ZONLY   Allows for rotations around Z only.
   NOONLY  Disables XONLY, YONLY, and ZONLY.
   HYDON   Display hydrogens if available.
   HYDOFF  Never display hydrogens.
   DEMO10  Mainly for scripts, do a 10 seconds demo
   ALLGRA  Same as SHOALL
   GRAALL  Same as SHOALL
   GRAPHI  Same as GRAFIC
   GRAPOT  Same as POTH2O
   GRASS   Same as GRASCH
   SS      Same as GRASCH
   GRATOT  Same as SHOTOT
   TOTGRA  Same as SHOTOT
   ROTY6   Same as ROTY+6
   VIEWOP  Dame as OPTVIE
   ZONE    Does ZONES, but only on one range 
   INIT    Same as INIOBJ (INIT -1 does INIGRA)
*
*       GRATWO module messages
*
   PHIPSI  Makes phi-psi plot
   RAMAON  Switch on continuously updated Ramachandran plot
   RAMAOF  Switch off continuously updated Ramachandran plot
   PRPMOM  Makes a property plot
   BFPLOT  Makes a B-factor plot
   ETPLOT  Makes a energy term plot
   PPPSRI  Create phi-psi plot in Shrinivasan style
   ATMLAB  Writes text next to atom
   L2DTYP  Labels residues of a certain type in phi-psi plot
   NOPIC2  Make MOL-items made in GRATWO unpickable
   PARAMS  Activates parameter modification menu
*
*       GRAEXT module messages
*
   AXIS    Draws a small axis system in 3 dimensions
   ARROW   Draws a small straigth arrow
   BARROW  Draws a small 90 degrees bend arrow
   TARROW  Draws a small 180 degrees bend arrow
   CATSCP  Draws Calpha tracing + lines indicating contacting sidechains
   CONCHG  Draw contacts to basic and acidic amino acids
   CELL    Draws a wires frame of the crystallographic cell
   CELLS   Draws a wires frame of multiple crystallographic cells
   DOTATM  Makes a dot sphere around one atom
   GRAAA   Draws all residues of (a) certain type(s) in a range
   GRAAAS  Draws all sidechains of (a) certain type(s) in a range
   HELCYL  Draws one cylinder through one helix
   HELLIN  Draws cylinders through all helices
   HELCA   Draws cylinders through all helices + rest in Calpha trace
   LINATM  Draws a line between two atoms
   PLANET  Draws the 'best fitting' ellipsoid around a range
   PLUTO   Draws a residu (drug) range as ball and stick model
   PLUTOS  As PLUTO, but only for sidechains of residues
   PLUTOP  As PLUTO, but sphere will not be dotted but 'lined'
   BPLANE  Draw peptide planes and indicate angles with B0 axis (NMR option)
   ALLFIL  Reads the line/dot/cross/label file
   DOTFIL  Reads dots from a file and displays
   LOOPCA  Loops over database range and make movie of alpha carbon drawings
   LOOPSP  As LOOPCA, but draws whole molecules
   LOOPST  Loops over database and plot SPLINEs of entries (takes hours)
   SPLPST  Very complicate ultra fancy plotting option (try it)
   SPLPSL  Very complicate ultra fancy plotting option (try it)
   SPLPS+  Very complicate ultra fancy plotting option (try it)
   LINFIL  Reads lines from a file and displays them
   COLTST  Draws a colour circle that shows all full colours
   ICOATM  Draws an icosahedron around one atoms
*
*       ELECTR module messages
*
   RUNDEL  Runs the DELPHI program
   GETODM  Reads the electrostatics map made by RUNDEL
   GETFDM  Reads a formatted Delphi electrostatics map from bugnest
   GETUDM  Reads an unformatted DelPhi electrostatics map from bugnest
   GETUUM  Reads an unformatted UHBD/GRID electrostatics map
   STAELM  Does statistics on the default map
   SCAELM  Scales the default map AVG and SDEV according to another map
   GRDELM  Calculates the first derivative of the default electrostatic map
   HISELM  Makes a histogram of a map
   INVELM  Inverts the default map
   JENS80  Does something too
   JENS90  Does something too
   MAKMAP  Makes two small maps (for testing purposes)
   OUTER   Remove convex points but keep amost concave ones
   REMOVE  Remove the shell + tunnels into the molecule
   URANGE  Truncates the map between user given limits
   SMOOTH  Smooths the map. (Local moving average)
   CONVEX  Removes convex surface points
   PEELIT  Peels one layer of the shell
   KPSHEL  Puts all 100's at zero
   KILISL  Remove points with only one non-zero neighbour
   LINER   Make the cut through the protein gausian
   FLATEN  Puts all values above a limit at that limit
   AVER0   Adds a constant to make the average map value 0
   INV50   Puts x (for x>50) at 100-x
   CNT100  Gives statistics about the environment of 100's
   SPIKER  Removes spikes from a map
   PEEL    Removes the entire outer shell
   MAPAND  Sets all points to 0 that are 0 in second map
   MAPDIF  Subtracts two maps
   SCALER  Scales all points between 0 and 100
   DEFMAP  Changes the default map
*
*       GRID module messages
*
   MAKGRN  Prepares default GRIN input file
   EDTGRN  Edits GRIN input file
   RUNGRN  Runs GRIN input file
   LSTGRN  Shows GRIN output at terminal
   MAKGRD  Prepares default GRID input file
   EDTGRD  Edits GRID input file
   RUNGRD  Runs GRID input file
   LSTGRD  Shows GRID output at terminal
   SETBOX  Resets the limits of the GRID map
   GETGRD  Reads in a GRID result map
*
*       GROMOS module messages
*
   MAKGRO  Writes a GROMOS file
   WREGRO  Executes WHAT IF's protein-pre-GROMOS option
   WRUNEM  Executes energy minimization automatically
   HEATUP  Runs MD in water using DvA's heat up protocol
   WRUNMD  Executes molecular dynamics automatically
   CONTMD  Start an MD continuation run
   GETETM  Executes energy analysis program
   PARAMS  Brings you to the GROMOS parameter menu
   ENERAN  Does an energy analysis
   FASTEM  No-nonsense fast EM, starting from soup
   FASTHT  No-nonsense fast HEATUP, starting from soup
   FASTMD  No-nonsense fast MD, starting from soup
   EDITOP  Converts any binary topology to ASCII, allowing user modification
   TRSFIL  Produces a phi-psi-omega contraint file for GROMOS
   MRGTOP  Merges two topology files
   SHOGMT  Shows results of last PROGMT run
   SHOGCH  Shows results of last PROGCH run
   SHOGWH  Shows results of last PROGWH run
   SHOBOX  Shows results of last PROBOX run
   SHOION  Shows results of last PROION run
   SHOEM   Shows results of last PROEM run
   SHOMD   Shows results of last PROMD run
   SHOMMT  Shows results of last PROMMT run
*
*       HBONDS module messages
*
   SHOHBO  Give hydrogen bonds between two ranges
   SLFHBO  Looks for intra residue hydrogen bonds only
   GRAHYD  Puts hydrogens in a MOL-item
   ONEHBO  Checks one potential hydrogen bond
   1ATHBO  Find all hydrogen bonds for one atom
   1AAHBO  Find all hydrogen bonds for one residue
   HSTHBO  Find backbone hydrogen bonds for secondary structure
   FILHBO  Find hydrogen bonds for atom pairs read from file
   BSSHBO  Find hydrogen bonds as function of main/side chain
   SPHHBO  Find all hydrogen bonds within a sphere
   INIPAR  Put parameters back to their defaults
   SHOPAR  Show hydrogen bond related parameters
   PARAMS  (Re-)set hydrogen bond related parameters

   HB2AWB  Add a hydrogen bond to the list of preferred hydrogen bonds
   HB2CWB  Clear the list of wanted hydrogen bonds
   HB2NET  Find the best hydrogen bond network
   HB2MAK  Create a PDB file including the polar hydrogen bonds
   HB2INI  (Re-)initialize the hydrogen bonding module
   HB2RES  Reset all coordinates and forget all H positions.
   HB2SPN  Set the penalty for a flip

   HB2GRA  Show hydrogen bonds between two ranges
   HB2LIS  List all hydrogen bonds
   HB2LFR  List flipped residues and unusual groups.
   HB2LBF  List bifurcated hydrogen bonds
   HB2LUA  List unsatisfied acceptors
   HB2LUH  List unsatisfied donors
   HB2LPA  List all potential acceptors for all donors
   HB2LAD  List all affected donors for each ambiguity
   HB2XST  Extra statistics about the hydrogen bonds
   HB2ENE  Calculate total H-bond energy for a range
   BBSHBO  Doet hetzelfde als BSSHBO
   HBOBBS  Doet hetzelfde als BSSHBO
*
*       HYDRO module messages
*
   SETPRP  Set moment calculation type
   CLCMOM  Calculate moments
   VECMOM  Calculate vector moments
   SHOPAR  Show present parameters
   PARAMS  Brings you in the moment calculation parameter menu
*
*       HSSP module messages
*
   SHOHSP  Show (parts of) a HSSP file
   GETHSP  Puts variability in property (PRP) array
   PIRHSP  Creates all PIR files from a HSSP file
   BLDFST  Builds structures from a HSSP file fast
   BLDONE  Models the first sequence on the first structure
   BLDHSP  Builds structures from a HSSP file slow
   GRAHSP  Displays the BLDHSP or BLDFST structures as movie
   VARHSP  Displays and plots the sequence variability
*
*       ITEMS module messages
*
   ITMON   Switches a MOL-item on
   ITMOF   Switches a MOL-item off
   OBJON   Switches a MOL-object on
   OBJOFF  Switches a MOL-object off
   DELITM  Deletes a MOL-item
   OBJINI  Deletes an entire MOL-object
   LSTITM  Lists all MOL-items
   MOVITM  Puts a MOL-item in FBRT
   APLSOU  Applies MOVITM matrix to part of the soup
   GRAINI  Removes all MOL-objects 
   GETITM  Retrieves one old MOL-item
   GETITS  Retrieves multiple old MOL-items
   MAKITM  Writes a  MOL-item as a formatted file
   MODLOF  Deletes the working model
   ITEMON  Old spelling for ITMON
   ITEMOF  Old spelling for ITMOF
*
*       LABEL module messages
*
   PCKRES  Labels one alpha carbon with residue name/number
   PCKATM  Labels one atom with its type and residue number
   PCKRNG  As PCKRES, but for a range of residues
   PCKTXT  As PCKRES, but asks for the text for the pick label
   PCKTYP  As PCKRNG, but only labels certain types
   PCKINI  Removes all labels
   PCKLIM  Sets a residue range outside which on cannot pick
   SHOPCK  List the labels made with a PCK command or by picking
   MOVPCK  Allows to translate labels, and alter their colour
   LABRES  Puts text label in a MOL-item near an alpha carbon
   LABATM  Puts a text label in a MOL-item near any atom
   LABRNG  As LABRES, but puts the same label at a range
   PCK1LC  Labels a range of residues in 1-letter code
   INI1LC  Removes the PCK1LC labels from the screen
*
*       MAKDB module messages
*
   MAKFMT  Creates a formatted coordinate file (ALCOOR.FMT)
   MAKXYZ  Regenerates ALCOOR.XYZ database coordinates from formatted file
   PRPCHK  Checkes if all PDB files required for database generation exist

   PRP001  Corrects all PDB files (Easily takes 24 hours and 100M space)
   PRP002  Creates MUTDB.IND and TOTALS.SEQ
   PRP003  Creates ALCOOR.XYZ (all PDB coordinates)
   PRP004  Corrects atom correctness flags in ALCOOR.XYZ
   PRP005  Create ALLHST.HST (secondary structure database by DSSP)
   PRP006  Create DGloop pointer files
   PRP007  Puts accessibilities in ALCOOR.XYZ
   PRP008  Creates the NEACON file
   PRP009  Creates phi-psi value tables for database
   PRP010  Creates accessibility tables for database
   PRP011  Creates atomic contact tables for database
   PRP012  Creates hydrophobic moment tables for database
   PRP013  Creates cys-cys bridge info tables for database
   PRP014  Does nothing
   PRP015  Puts the eighth torsion angles as term 10 in alcoor
   PRP016  Makes the secondary structure element tables
   PRP017  Does nothing
   PRP018  Creates ALLDSP.DSP for use of original DSSP values
   PRP019  Creates HSSP derived sequence profiles
   PRP020  Creates conservation table
   PRP021  Creates backbone hydrogen bond table

   AUX001  Creates RAMA.LIN (backdrop for Ramachandran plots)
   AUX002  Calibrates Ramachandran Z-score (parameters in PARAMS.FIG)
   AUX003  Calibrates chi-1/chi-2 Z-score (parameters in PARAM.FIG)
   AUX004  Creates NQA boxes (needs PRP001 and 200M space in current directory)
   AUX005  Creates NQA residue calibration
   AUX006  Creates NQA structure calibration
   AUX007  Creates NQA virtual atom boxes
   AUX008  Creates inside/outside calibration database (INOUTF.DAT)
   AUX009  Creates Backbone conformation Z-score calibration
   AUX010  Creates EVACHI.CHI (Calibration table for CHICHK)
   AUX011  Creates IMPROPER.DAT (Calibration table for HNDCHK)

   PRP101  Copy all PDB files to default directory
   PRP102  regenerate PDB.LIST from the database
   PRP103  checks if all HSSP files exist
   PRP107  creates formatted HSSP derived files
   PRP108  re-creates real HSSP derived files
   PRP110  Creates the 1-3 bond table 
   PRP115  Creates the 1-2-3 angle table for the soup
*
*       MAP messages
*
   GETMFF  Reads an MFF style map into WHAT IF
   MAKMFF  Writes an MFF style map to disk
   GETFMP  Reads a formatted map
   MAKFMP  Writes a formatted map
   GETXPF  Reads a formatted XPLOR map
   SAVMAP  Saves all present map parameters in a file
   RESMAP  Restores all present map parameters from a file

   SHOMAP  Inspect map-related parameters and grid values
   DEFMAP  Changes the default map
   DELMAP  Removes a map from WHAT IF's memory
   INIMAP  Removes all maps from WHAT IF's memory
   PRBRAD  (Re-)set the probe radius for cavity calculations
   RESOLU  Set upper limit on resolution
   PARMAP  Change map-related parameters

   SRFMAP  Creates an accessible surface contour map
   CAVITY  Creates an electron density map for cavities
   CAVVOL  Interactive cavity volume calculation 
   AACAVI  Shows residues that touch cavities
   SMLCAV  Calculates local cavity more precise
   CONMAP  Calculates map that represent contacts between subunits
   RELCAV  Makes that more/wider caves are kept
   TGHCAV  Makes that fewer/narrower caves are kept
   GRAMAP  Sends contours to the graphics window
   GRACOL  As GRAFST, but with coloured lines
   GRAXYZ  As GRAMAP, but contours only in one direction
   AXMAP   Puts axes along the shown map fragment
*
*       MAPCON module messages (complete)
*
   MAKCON  Creates files needed to run Connolly's program
   RUNCON  Runs Connolly's program
   LSTCON  Get PQMS or TRB related files in the editor
   DOTCON  Makes a dot surface
   LINCON  Displays surface as lines
   TRICON  Displays surface as triangles
   SOLCON  Makes a solid rendered surface shell
   PARAMS  Brings you to the Connolly interface parameter menu
*
*       MAPEDT module messages (complete)
*
   GETENV  Reads an envelop into the main map
   GRAMPP  Activates the interactive editing option
   FIX0    Switch from toggle picking to fixed 0 setting
   FIX1    Switch from toggle picking to fixed 1 setting
   NOTFIX  Switch (back) to toggling upon picking
*
*       MASMAP related messages
*
   OUTER   Remove convex points but keep amost concave ones
   REMOVE  Remove the shell + tunnels into the molecule
   RANGE   Scales the map between 0 and 100
   URANGE  Truncates the map between user given limits
   SMOOTH  Smooths the map. (Local moving average)
   CONVEX  Removes convex surface points
   PEELIT  Peels one layer of the shell
   KPSHEL  Puts all 100's at zero
   KILISL  Remove points with only one non-zero neighbour
   LINER   Make the cut through the protein gausian
   FLATEN  Puts all values above a limit at that limit
   AVER0   Adds a constant to make the average map value 0
   DENMAP  Display density values at the terminal
   INV50   Puts x (for x>50) at 100-x
   HISTOG  Gives a histogram of density values
   CNT100  Gives statistics about the environment of 100's
   SPIKER  Removes spikes from a map
   PEEL    Removes the entire outer shell
   UPDATE  Writes a new internal copy to disk
   MAPAND  Sets all points to 0 that are 0 in second map
   MAPDIF  Subtracts two maps
   SCALER  Scales all points between 0 and 100
   DUMMY1  Empty option for users to program
   DUMMY2  Empty option for users to program
   DUMMY3  Empty option for users to program
   DUMMY4  Empty option for users to program
   DUMMY5  Empty option for users to program
   DUMMY6  Empty option for users to program
   DUMMY7  Empty option for users to program
   DUMMY8  Empty option for users to program
*
*       MDF module messages
*
   GETMDF  Reads an MDF
   LSTMDF  Lists reflections at the terminal
   WSTMDF  Creates a Wilson plot for one column
   LCNMDF  Lists the column numbers
   DSTMDF  Give statistics on the difference of two columns
   SBNMDF  Sets bin boundaries for COLBIN
   GRAMDF  Puts the requested dots at the screen
   TALMDF  Switches all reflections on
   TSZMDF  Switches refs on as function of size
   TDFMDF  Switches refs on as function of difference
   TASMDF  Switches refs on as function of absency
   TAAMDF  Trigger as function of resolution
   HKLMDF  Trigger blocks of H K L
   RN2MDF  Switches refs off if not in two columns
   CAKMDF  Give all refs one colour
   CSZMDF  Colour refs as function of their size
   CDFMDF  Colour as function of two columns difference
   CBNMDF  Colour per size bin
   CASMDF  Colour as function of absent/present
*
*       MOL module messages
*
   SHOSOU  Shows the contents of the soup.
   INISOU  Initializes the entire soup (irreversably).
   DELMOL  Deletes one molecule from the soup.
   DELMLS  Deletes a range of molecules.
   MAKMOL  Writes (part of) the soup to a PDB-file.
   MAKMLR  As MAKMOL, but writes only atoms that are TRUE in a ROW
   GETGRO  Reads coordinates from a GROMOS coordinate file.
   GETKIN  Reads coordinates from a KINEMAGE coordinate file.
   MAKDNA  Creates a DNA molecule.
   SAVSOU  Saves the coordinates, etc. in a save-file.
   RESSOU  Restores the coordinates, etc. from a save-file.
   SAVSTA  Saves the status in a save-file.
   RESSTA  Restores the status from a save-file.
   DELETE  Deletes one residue from the soup.
   SOUCOP  Appends a copy of part of the soup after the last protein.
   NEWUNQ  Renumbers unique identifiers
   GETDBF  Reads a protein from the internal database.
   PASTE   Allows to paste molecules together.
   CUT     Undo a PASTE, or set a CUT flag.
   PASTAL  Pastes everything that can be pasted.
   INIPAS  Clears all previously set PASTE and CUT flags.
   SHOPAS  Shows all PASTEs and CUTs set.
   SAVAA   Saves one amino acid in a residue file.
   RESAA   Restores one amino acid from a residue file.
   CORAA   Corrects a range of residues (where needed).
   CORALL  Corrects all amino acids in the soup (if needed).
   SETCHA  Gives residues a (new) chain identifier.
   CNTBAD  Counts good and bad residues in all molecules.
   ADDOXT  Adds second oxygen to C-terminal residue
   SHOCYS  Shows how many cysteines are paired/unpaired.
   SETCYS  Forces WHAT IF to think that two Cys-es are paired.
   INICYS  Undoes all forced cys-cys pairs.
   DVADOM  Mark all atoms as OK, even if they are not
   GETUS3  Read PDB files with extended residue names.
   STATUS  Debug option to list soup pointers.
   CLNSOU  Removes overlapping proteins and non-protein from the soup.
   INVERT  Inverts a sequence and adds the new sequence at end of soup
   MERGED  Merges multiple drugs into 1 drug
   DELDNA  Deletes a base pair from two DNA strands
   HBODNA  Lists DNA pairing, based on hbonds pattern
   SHEARD  Lets proteins crawl along DNA
   NOBOTO  Removes connections between residues and other shit
   FIXDNA  Runs a couple corrections on DNA with bad nomenclature
   SHOTOP  Shows the contents of the presently used topology file
   PASRNG  Run PASTE over a range
*
*       NEURAL module messages (complete)
*
   SHOPAR  Show the network architecture parameters
   ININEU  Re-initialize all neurons/junctions
   GETSET  Reads teaching and/or testing sets from file
   SHONEU  Display neuron values at terminal
   SHOSET  Shows data set with measured and predicted output
   NETWRK  Allows you to define the network architecture
   MAKNEU  Writes neuron (junction) values in a file
   GETNEU  Reads neuron (junction) values from a file
   TRAIN   Executes training run(s) for the network
   COOLNW  Reduce the 'temperature' of the neurons
   HEATNW  Increase the 'temperature' of the neurons
   QQSAR   Does a quasi-QSAR linear optimization
   JKNIFE  Runs a Jack-Knife training procedure
   SAVNEU  Save network in a file
   RESNEU  Restore network from a file
   SHAKEN  Shake up the net when stuck in local minimum
   DEBUG   Don't use. For programmers only
   EXAMPL  Needed to run the example given in the writeup
   MAKTST  Makes a small test input file for secondary structure prediction
   SCATER  makes a three dimensional scatter plot of simple net results
   PARAMS  Brings you to the parameter menu
*
*       NMR module messages (complete)
*
   USEMLS  (Re-)define the molecules to be used
   LSTMLS  List which molecules were selected with USEMLS
   SUPMLS  Superpose all molecules to be used
   CHKMLS  Checks if a the molecules are covalently identical
   GETDIA  reads coordinates from a DIANA file
   MOTMLS  Does a MOTIF based superposition of multiple structures
   CAMLS   Display alpha carbon trace of molecules to be used
   ZONMLS  Displays one zone from all molecules to be used
   BBBALL  Display backbone in (small-)ball and stick mode
   GRABBD  As BBBALL, but without H's atoms
   PEPLAN  Display peptide planes
   VECPLN  Display peptide planes, and the angles with B-zero
   NMRHND  Makes plot at graphics screen of residue handedness
   TOPOLO  Reads a new topology file
   AVRMOL  Averages molecules
*
*       NOTES module messages (complete)
*
   AANEW   Initializes the notebook for a residue
   AANOTE  Adds a note in the notebook for a residue
   AASHOW  Shows the contents of the notebook for a residue
   MAKNEW  Create a new general notebook
   USEOLD  (Re-)open an existing general notebook
   WRITE   Write a note in the general notebook
   NINDEX  Show the index of the general notebook
   PRINT   Print (part of) the notebook
   CLOSE   Close the present notebook
*
*       OTHER module messages
*
   CHIHST  Phi-psi plots per residue type (movie)
   CHSHOW  Re-display one step from the CHIHST movie

   KINFIT  Determine dH-activation and T50 from Act vs T curve
   KINFT2  Determine dH-activation for two loops in 4 curves
   KINFT3  Determine A and dH-activation from 1 curve
   KINFT4  As KINFT2 but more restricted in parameter freedom

   LUIS01  Determine energy parameters for double mutants
   LUIS02  Determine energy parameters for single mutants
   ACCEXT  Determine accessibility statistics over database
   ATMATM  Calculates atom-atom distance distributions
   FIND3A  Finds groups of 3 amino acids in a similar contact relation

   GETOBL  Reads an O datablock
   MAKOBL  Writes an O datablock

   MSDB01  Find polymeric units
   MSDB02  Paste each chain into one molecule
   MSDB03  List which molecules are "identical"

   REM290  Make REMARK 290 records for a PDB file
   REM375  Make REMARK 375 records for a PDB file
   REM500  Make REMARK 500 records for a PDB file
*
*       PIRPSQ module messages (complete)
*
   DIRPIR  Shows list of available pir files
   SHOPIR  Shows one pir file at the terminal
   GETPIR  Adds a pir file to the list
   SOUPIR  Writes (part of) the soup into a pir file
   DELPIR  Removes pir files from WHAT IF'S memory
   SAVPIR  Saves all pir file information in a file
   RESPIR  Restores all pir file information from a file
   INIPIR  Initiates all pir information
   BLDPIR  Model building by homology
*
*       PLOTIT module messages
*
   PLOT    Creates a plot file for the FROPLO program
   PSTPLT  Creates a postscript file, and plots it
   PSTPOS  As PSTPLT, but with user defined plot position at paper
   PSTCPK  Creates a postscript CPK file and plots it
   PARAMS  Brings you in the plot parameter menu
   SAVMAT  Saves the present view matrix in a formatted file
   RESMAT  Restores the present view matrix from file
   SETPST  Switches to Postscript plotfile format
   SETHPG  Switches to primitive HPGL plotfile format
   SETFIG  Switches to XFIG 3.1 plotfile format
   USEMAT  Toggles between view from screen and view from file
   PSVIEW  Shows the present view matrix
   DUBLIT  Makes one stero plot from a right and left frame
*
*       PORNO module messages
*
   RIBBON  Makes a ribbon, and allows you to add sidechains
   RIBCPK  Makes a ribbon and allows you to add whole residues
   CARROW  Makes a C-alpha trace with N to C terminal arrows
   HBOFIL  Makes a file with hydrogen bonds for RIBBON
   CACROS  Draws crosses at requested alpha carbons
   PLUTON  Activates Ton Spek's PLUTON program
   APLVIE  Apply the present view to the soup
   WIFRIB  Creates a backbone ribbon using David Thomas' software
*
*       QUALTY module messages
*
   RNGQUA  does quality control on a residue range
   NMRQUA  does quality control on a series of NMR structures
   MUTQUA  tries all mutants for a range
   PARAMS  brings you in the old style quality control parameter menu
   QUAPAR  show you the old style quality control parameters

   OLDQUA  Calculate first generation quality scores
   NEWQUA  Calculate second generation quality scores*QUAHIDEN
   QUAFMT  Write formatted quality control boxes
   QUADFT  Convert formatted boxes to unformatted
   FILQUA  Show location of quality control boxes
*
*       REFINE module messages
*
   REFI    Performs the regularization
   REFCNT  Continues a REFI run (needed if FIX is active)
   CRUDE   Does a very crude first fix of distances
   REFCYS  Crudely closes cys-cys bridges
   SNAPIT  Force atoms to fall on top of other atoms
   ADDHYD  Add protons to residues
   OPTHYD  Optimize proton positions
   DELHYD  Remove protons from a range
   NOFIX   Removes all FIX flags
   FIXCA   Fixes all alpha carbons in a range
   FIXHAT  Fixes all heavy atoms in a range
   FIXRNG  Fixes all atoms in a range
   ANCHOR  Switches the ANCHOR option on
   NOANCH  Switches the ANCHOR option off
   PARAMS  (Re-)sets the regularization parameters
*
*       SHAKE module messages
*
   SHAALL  Reconstruct whole soup by shaking
   SHABLD  Model ab-initio using various constraints
   SHACOL  Colour ranges as function of SHAKE violation
   SHAFIX  'Repair' a loop using SHABLD for just a loop
   SHAMUL  Does multiple SHAALL runs
   SHARNG  Reconstruct part of the soup by shaking
*
*       SCAN3D module messages
*
   PSIPHI  Makes phi psi determined group
   HELSHT  Makes secondary structure dependent group
   SEQUEN  Makes sequence determined group
   ACCVAL  Makes group depending on accessibilities
   CHIVAL  Makes group depending on one torsion angle
   OMEGA   Makes group depending on omega
   DAYHOF  Makes group using dayhof homology matrix
   TURNTP  Searches for turns of certain type
   SCNHYD  Makes group depending on hydrophobic moments
   SCNCYS  Searches for (un-)paired cysteines
   SCNCON  Makes group depending on contacts
   SCNCNS  Makes group depending on sequence conservation
   DGCONT  Makes a group of look alike contact pairs
   DOSCAN  Scans protein in soup with Dayhof matrix against database
   SCNPOS  Makes a group as function of position in molecule
   SCNHBO  Makes a group depending on backbone h-bonds
   NEACON  Make a group base on intra-fragment contacs
   SCNGRA  Put group in the movie
   SCNGRE  Put group plus its environment in the movie
   SCNGRL  Put group in MOL-item
   SCNGRN  Put hits middle residue plus neighbours in MOL-item
   SHOGRP  Shows all presently active groups
   SCNUSE  Gets a hit from a group and stores it in the soup
   SHOHIT  Shows hits from a group
   SANDOR  Does logical operations on groups
   SCNINV  Does logical inversion of a group
   SETLEN  (Re-)sets the length of the groups searched for
   SETEAA  Defines so-called self-made amino acids
   SHOEAA  Shows the so-called self-made amino acids
   PARAMS  Go to SCAN3D parameter menu
   SAVGRP  Saves all groups in a file
   RESGRP  Restores all groups from a file
   INIGRP  (Re-)initializes all groups
*
*       SCNSDB messages
*
   SDBACC  Shows accessibilities for one database entry
   SDBHST  Shows the DSSP determinations for a database entry
   SDBCHI  Shows all torsion angles for a database entry
   SDBCYS  Shows cys-cys bridges for a sequence entry
   SDBSEQ  Shows the sequence for a database entry
   SDBPRF  Shows sequence preference profile for an entry
   SDBHBO  Shows hydrogen bonded residues for a database entry
   SDBHMO  Shows hydrophobic moment for one entry
   DINDEX  Show database index
   SHOPAR  Show the major parameters for this menu + run DINDEX
   SEQINF  Show sequence information for one entry
   SHOHED  Show the PDB file header for a database entry
*
*       SCAN3D STATS messages
*
   ONEPRF  Shows for one position in one group all statistics
   ALLPRF  Shows minimal statistics for all positions in a group
   ONECHI  Shows for one position in one group the chi-1 statistics
   ALLCHI  Shows for all positions in one group the chi-1 statistics
   GRACHI  Puts three dimensional Ramachandran plot in a MOL-item
   LSTCHI  Lists torsion angles for all angles at one position
   PRFPAI  Shows statistics about pairs in one group
   PARAMS  Brings you in the SCAN3D parameter menu
*
*       SELECT module messages
*
   SELINI  Initialize all SELECT related parameters
   SELNMB  Search in all PDB files for a certain numerical value
   SELTXT  Search in all PDB files for a certain text string
   SELSHO  Show the columns obtained sofar
   SELHIT  Show the hits in one column
   SELLST  As SELHIT, but with reduced information
   SELAND  Perform a logical AND on two columns
   SELOR   Perform a logical OR on two columns
   SELINV  Inverts one column (TRUE->FALSE and FALSE->TRUE)
   SELUSE  Store hits for usage by the SCAN3D option(s)
*
*       SEARCH module messages
*
   ROWHBO  Sets row to TRUE for atoms involved in hydrogen bond
   ROWACC  Sets row according to atom or residue accessibility
   ROWGAC  Sets row according to accessibility of group of atoms
   ROWPDA  Sets all potential H-bond donors/acceptors to TRUE
   ROWNOH  Sets row to TRUE for atoms 'nearby' a water molecule
   ROW1AA  Sets row according to amino acid type
   ROW1AT  Sets row according to atom type 
   ROWNCF  Sets row to TRUE for atoms 'nearby' a co-factor 
   ROWSBR  Sets row TRUE for atoms/residues involved in a saltbridge
   ROWSPH  Makes a row of atoms within a sphere of an alpha carbon
   ROWBFT  Sets row according to atomic B-factors 
   ROWHST  Sets a row according to secondary structure 
   ROWCAV  Sets a row for all atoms touching a cavity 
   ROWHSP  Sets a row according to HSSP values (mutability) 
   ROWCON  Sets a row according to contacts 
   ROWCNR  As ROWCON. Puts row constraint on neighbours 
   ROWDIP  Sets a row of helix caps 
   ROWMAN  Sets a row of residues manually
   ROWPOL  generates a row as function of polarity
   ROWSHO  Shows which rows are active, and their contents 
   ROWHIT  Lists a range of amino acids and marks the hits 
   ROWHTO  As ROWHIT, but skips residues without hits 
   ROWTAB  Writes residues with hits in a table 
   ROWHPR  Shows residues plus number of hits per residue 
   ROWHP1  As ROWHPR, but at least 1 hit required 
   ROWINI  Resets (=initiates) all rows and their counters etc. 
   GETVAL  Reads values from a file, and makes a row 
   GETROW  Reads a previously created row 
   MAKROW  Creates a file holding the info from one row 
   SAVROW  Puts all present rows in a save file 
   RESROW  Restores all present rows from a save file
   ROW1TA  Sets all atoms in residue TRUE if one atom is TRUE
   ROW1T0  Sets all atoms in residue FALSE if one atom is FALSE 
   ROW0TA  Sets all atoms in residue TRUE if all atoms are FALSE 
   ROWAND  Logical AND on two rows 
   ROWOR   Logical OR on two rows 
   ROWXOR  (Il-)logical XOR on two rows 
   ROWNOT  (Il-)logical NOT on two rows 
   ROWINV  Logical NOT on one row (TRUE <--> FALSE)
*
*       SUPPOS module messages
*
   GETMAT  Get a matrix from the database
   PUTMAT  Store a matrix in the database
   LSTMAT  Show present matrix plus database
   DIRMAT  Lists entire database contents
   DELMAT  Deletes a matrix from the database
   GETOLD  Reads an external transformation file
   SHOMAT  Shows the presently active transformation
   RANGE1  Sets range on which to superpose
   RANGE2  Sets range to be superposed
   DOSUP   Calculates matrix that can place range2 on top of range1
   APPLY   Applies a matrix to a zone
   UNDO    Undoes the excution of aplly
   PICKIN  Gets superposition sets by picking at the screen
   APLITM  Applies a matrix to a MOL-item
   SUPOPT  Optimizes the present superposition situation
   SHORNG  Shows ranges (after setting superposition ranges)
   SAVRNG  Saves ranges in a file
   RESRNG  Reads ranges from a file
   INISUP  Initializes all parameters relevant for SUPPOS
   MOTIF   Finds the best way to superpose two stretches
   SFUDGE  Average two structures with identical sequences
   SFUDG2  Average two structures with different sequences
   ANAFIT  Finds the smallest motion to superimpose ranges
   COMPAR  Gives fit statistics
   EQUAL   Compares two covalently identical protein molecules
   EQUALF  As EQUAL, but gets matching residues from a file
   COLDIF  Colour range 2 as function of superposition error
   CENDIF  Calculates residue center distances between ranges
   CADIFF  Calculates Ca-Ca distances between two ranges
   CABOX   As CADIFF, but results are shown as diagonal plot
   SUPSTS  Gives fit statistics
   ISBEND  Find the point of bending in case of domain bending
   PARAMS  Brings you to the suppos parameter setting menu
   MOTIV   This is alternative spelling for MOTIF
*
*       TABLES module messages
*
   TABDIR  Gives list of available tables
   TABDEL  Deletes one table
   TABINI  Initializes all table related parameters
   TABSHO  Shows the contents of tables
   TABGET  Reads a table from a formatted file
   TABLST  Writes a table as a formatted file
   TABOUT  Writes a set of tables as a formatted file
   TABDWN  Shifts (part of) a table down
   TABUP   Shifts (part of) a table up
   TABGRA  Puts a table at the graphics window
   TABPST  Plots a table at the laser writer (postscript)
   TABSAV  Saves all table relevant data in a file
   TABCLU  Makes a CLUSTER from a logical table
   TAB2PR  Converts table values into residue properties
   TABRES  Restores all table relevant data from a file
   TABACC  Makes a table of residue accessibilities
   TABVAC  Makes a table out of vacuum accessibilities
   TABAA   Makes a table of residue names
   TABABF  Makes a table of residue averaged B-factors
   TABBFT  Makes an alpha carbon B-factor table
   TABBMP  Make a table of all bumps
   TABCHI  Makes a table with torsion angles
   TABETM  Makes a table with energy values
   TABEVD  Makes a table with integrated electron densities
   TABHBO  Makes hydrogen-bond related tables
   TABHST  Makes a secondary structure table
   TABNUM  Makes a table with simple numerical values
   TABPIR  Makes a table out of a pir file
   TABPNM  Makes table with original pdb numbers
   TABQUA  Makes a table of residue packing quality values
   TABATV  Makes a table out of atomic property values
   TABPRP  Makes a table from residue property values
   TABADD  Adds two tables
   TABSUB  Subtracts two tables
   TABMUL  Multiplies two tables
   TABMIN  Determines the pairwise minimum of two tables
   TABMAX  Determines the pairwise maximum of two tables
   TABAVE  Determines the pairwise average of two tables
   TABAVM  Determines the average of more than two tables
   TABCOR  Determines correlation between tables (after shifting)
   TABMOD  Executes modulo operation on a table
   TABSQ2  Squares a table
   TABAAC  Make table of residue type PDB average accessibilities
   TABSMC  Number of symmetry related contacted residues
   TABCAA  Generate residue type statistics for a table
   TABADF  Determine angular distance between angle tables
   TABDIF  Put a character mark if two tables differ 'too much'
   TABDF2  Put a numerical mark if two tables differ 'too much'
   TABCUP  Toggles continuous updating of tables at graphics screen
   TABSCT  Make a scatter plot for two tables
   TBLVGT  Create a logical table as for numerical table > cutoff
   TBLVEQ  Create a logical table as for numerical table = cutoff
   TBLINV  Inverts a logical table (TRUE <--> FALSE)
   TBLAND  Makes table of logical AND on two tables
   TBLOR   Makes table of logical OR on two tables
   TBLSTS  Counts TRUEs and FALSEs per residue type
   TBLDFC  Makes logical table of comparison of character tables
*
*       WATER messages
*
   SHOWAT  Lists groups of water molecules and number of H2Os
   LSTWAT  Lists a range of water molecules
   WATNAA  Lists all waters near a residue
   NAAWAT  Lists the nearest residue for every water
   NALWAT  Lists all near residues for every water
   DBLWAT  Lists all waters that contact two ranges
   STSWAT  Gives statistics on water positions
   CABWAT  Determines Ca-Cb orientation relative to nearest bulk water
   POTWAT  Predicts waters around a residue
   MOVWAT  Applies all matrices to bring h2o's near a range
   NETWAT  Draws a net over a group of water molecules
   COPWAT  Allows you to make sub groups of waters by hand
   DUPWAT  Make multiple copies of touching symmetry related waters
   CHKWAT  Same option as H2OCHK in CHECK menu
   SPLWAT  Splits water in eigth groups
   PARAMS  Brings you to the water parameter menu
*
*       WALCOR related messages
*
   CORMUT  General basic correlated mutation finder
   CORMUM  As CORMUT, but using a scorings matrix
   CORMUN  As CORMUT, but without the variability contribution
   CORMUF  As CORMUT but with a different scorings scheme

   CORAN1  Searches for correlations against a CMC file
   CORAN2  As CORAN1 but with a different scoring scheme
   CORPM1  As CORAN1 but with a different scoring scheme
   CORPM2  As CORAN1 but with a different scoring scheme
   CORGR1  As CORAN1 but with a different scoring scheme

   GETCMC  Sort the BIGFILE according to the sequence order in CMC file
   GETTIT  As GETCMC, but also reads new titles from the CMC file
   MAKCMC  Write a CMC file that corresponds to the BIGFILE
   SRTCMC  Sort a CMC file according to the CMC code
   MAKTFF  Creates a skip file for conserved residues
   MAKPTF  Creates a skip file for conserved residues, using CMC input
*
*       WALGRA related messages
*
   GRASQS  Display sequences graphically
   COLSQS  Allows for the modification of the residue colour list
   SHOW    Used in the WALIGN related menus, makes GRASQS interactive
   2DPLOT  Displays sequence as 7-tubes through membrane plot (for GPCRs)
   PRETYG  Pretty drawer for multiple sequence alignments
   PRETYP  As PRETYG, but now for postscript output
*
*       WALIGN messages
*
   WALCOR  Activates the mutation correlation menu
   WALGRA  Activates the graphical sequence menu
   WALPRF  Activates the sequence profile and alignment menu
   WALSEQ  Activates the sequence administration menu
   WALSRT  Activates the sequence sorting and selection menu
   WALINI  Initializes all alignment parameters
   BIGFIL  Opens a (new) big file for sequences/profiles
   ORGBCK  Overwrite aligned sequence(s) with original (unaligned) copy
   BIGSTS  Counts number of profiles and sequences in BIGFILE
   SETMAT  Sets/reads a alignment scorings matrix
   SHODAY  Displays present scorings matrix at terminal
   2ALIGN  Align 2 sequences
   MAKHSP  Write sequences in HSSP format file
   SHOIDM  Shows pairwise sequence identity matrices
   HISTID  Make histogram of identity percentages between sequences
   MFETCH  Makes a list of file namess that can be used by GCG's FETCH
   MFILES  Makes the file FILES.LIST, needed for the server
   PARAMS  Brings you in the alignment parameter menu
   WLHPID  Graphical display of pairwise similarities
   WLHLFK  Read sequences from LFK style file
   WLHGAP  Over-rule profile gap penalties with those from PARAMS
   WLHLFD  Reads sequences from LFK-daily-update-files
   WLHFIN  Checks if the Brh aligned sequences have the GPCR fingerprint
   WLHDFN  Delete sequences that do not have the GPCR fingerprint
   WLH1ST  Does the whole 7TM HSSP process for one molecule class
   WLHSWS  Reads sequence(s) from set of combined swissprot files
   WLHDNA  Delete DNA sequences from the BIGFILE
   WLHL2S  Read sequences from a 'list2seq' file (alternative FASTA)
   WLHDFR  Delete fragments from the BIGFILE
   WLHCLU  Cluster sequences after alignment
   WLHSPA  List WALIGN related common parameters and values
   WLHCPL  Creates the file PDB.LIS
   WLHPCR  Searches for decamers that can be good PCR probes
   WLHWIN  Writes unaligned sequences as single records in a file
   WLH2ST  As HIDE08, but including gap penaltie updates
   WLHRIN  Reads sequences back that were written with HIDE17
   WLHGWT  Searches in sequences for a fragment of requested weight
   WLHWIA  Writes aligned sequences as single records in a file
   WLHXXX  Does somthing too....
   WLHSPR  Runs all sequences against all profiles
   WLHNAP  Converts DNA sequence into protein sequence
   PHYTRE  Draws phylogenetic tree
   EMBED3  Embed sequence space in 3 dimensions
   PLOT2D  Alternative spelling for PLOT2D
*
*       WALPRF messages
*
   GETPRF  Reads a profile from a file
   DELPRF  Deletes a profile from the BIGFILE
   DELPRS  Deletes multiple profiles from the BIGFILE (slow option)
   MAKPRF  Writes a profile in a profile-file
   DIRPRF  gives a list of the profiles presently in the BIGFILE
   LSTPRF  Lists the sequence information of a profile
   SHOPRF  Lists all information of a profile
   ALIPRF  Aligns sequences against a profile
   PRFSWT  Update sequence and residue weights
   UPDPRF  Updates a profile after alignment
   UPAPRF  Updates a profile after alignment, including gap penalties
   NEWPRF  Makes a new profile from (aligned) sequence(s)
   CNVPRF  Convolute profile with scorings matrix
   SOUPRF  Makes a profile for all protein in the SOUP
   AL2PRF  Aligns two profiles
   PCTPRF  Determines convolution between sequences and a profile
   INSPRF  Puts an insertion in a profile
   SEQPRF  Writes one sequence out as a profile file
   MAKMSF  Write multiple sequence alignment as a MSF
   GETARB  Reads arbitrary sequence numbers from a profile
*
*       WALSEQ messages
*
   GETSEQ  Reads sequence(s) from file
   DIRSEQ  Gives directory of sequences/profiles in big file
   LSTSEQ  Lists complete info about sequence(s)
   LSTSQS  List residue(s) for range of sequences
   DELSEQ  Deletes sequence(s) from the big file
   MAKSEQ  Write out sequence in sequence file
   CCNSEQ  Concatenates two sequences
   MAKINT  Write sequence(s) in WHAT IF's formatted format
   GETINT  Read sequences back from a WHAT IF format formatted file
*
*       WALSRT messages
*
   DELNAM  Delete sequences with certain text in title
   DMATCH  Look for nearly identical sequences
   DOUBLS  Look for identical sequences
   KPNAME  Only keep sequences with certain text in title
   KWCHEK  Allow logical expressions for DELNAM or KPNAME
   KILDBL  Remove sequences that occur for a second time
   UNKTYP  Determines for unknown sequences the class
   DELALI  Deletes sequences with insufficient overlap with a profile
   SRTPCT  Sorts sequences as function of overlap with a profile
   SRTPID  Sorts sequences as function of identity with a profile
   SRTACC  Sorts sequences by numerical part of accession code
   SRTGMB  Sorts sequences as function of grey meatball character
   SRTFLN  Sorts sequences by file name
*
*       WALSRV messages
*
   GPCINI  Initialize the big server file
   GPCOPE  Open the existing big server file
   GPCSTS  Show all statistics about the big server file
   GPCSRC  Shows only the summary statistics about the big server file
   GPCGCL  Read the classes from _7TM.CLASSES
   GPCGPR  Get the profile information from _7TMPROF.LIST
   GPCRPR  Read the profiles obtained with GPCGPR
   GPCSPL  Uses the profiles to classify the sequences and sort them
   GPCSEL  Uses the profiles to classify the sequences. Dont sort them
   GPCMAL  Loop over all classes and make HSSP, MSF, etc.
   GPCO7T  Read the 7TM directories file
   GPCG7T  Gets the files from 7tmrlist.txt local
*
*       XRAY related messages
*
   EVADEN  Convolutes bell shaped atoms with the density map
   EVACAS  As EVADEN, but for alpha carbons only
   RSRSID  Optimizes side chain density fit by torsion rotation
   RSRRES  Rigid body translational density fitting, whole res
   RSRBB   Rigid body translational density fitting, backbone
   PEPFLP  Flips one peptide plane.
   RNGFLP  Inverts backbone direction.
   MASMAP  Go to the map massage menu (mainly for X-ray)
   MAPEDT  Go to the enveloppe map editor menu
*
*      DSSP messages
*
   SHOHST  Shows the secondary structure of a protein
   SHOSSS  As SHOHST, but adds accessibility and symmetry contact info
   INIHST  Forces WHAT IF to redetermine the secondary structure
   EDTHST  Allows for manual modification of secondary structure
   ALLHEL  Forces WHAT IF to thing that all residues are helical
   ALLCOI  Forces WHAT IF to think that all residues are coil
   SUMHST  Determine secondary structure percentages in the soup
   WIFHST  Forces WHAT IF to use its internal emulator and not DSSP
   CHKHST  Determines the correlation between DSSP and its emulator
   HSTMTS  One day this option will improve sec. struc. determinations .
   ORGDSP  Replaces converted HST in database by original DSSP values
   GETDSP  Reads the C-alpha coordinates from a DSSP file
   ALCOIL  Alternative spelling for ALLCOI
   NEWHST  Alternative spelling for INIHST
*
*      Symmetry messages
*
   SOUSHL  Add all residues in a shell to the soup
   SOUBOX  Add all residues in a box  to the soup
   SOUSPH  Add all residues in a sphere to the soup
   SOUSRS  Add all residues in a sphere around a residue
   SOUCEL  Add all molecules in the unit cell to the soup
   SOUSM1  Apply one symmetry transformation to the soup.
   SOUSYM  Apply all symmetry transformations to the soup.

   GRASHL  Show all residues in a shell in a MOL-item
   GRABOX  Show all residues in a box in a MOL-item
   GRASPH  Show all residues in a sphere in a MOL-item
   GRASRS  Show all residues in a sphere around a residue
   GRACEL  Show all molecules in the unit cell
   GRASM1  Show one symmetry transformed molecule
   GRASYM  Show all symmetry transformed molecules

   CELCKM  Check many CRYST1 and SCALE cards.
   CELSHO  Show CELL, and SCALE and INVERSE SCALE transforms
   CELINP  Input cell parameters via the keyboard
   CELNEW  Check whether the conventional cell makes symmetry
   CELAPP  Apply the transformation to the conventional cell

   LCKSYM  Toggle locking of symmetry matrices
   USESYM  Toggle usage of symmetry in other options
   SYMDEL  Delete individual transformations
   SYMINI  Clear all transformations
   SYMSAV  Put transformations to file
   SYMRES  Get transformations from file
   SYMSHO  Show all transformations
   SYMINP  Input transformations via the keyboard
   SYMSPG  Add the transforms implied by Spacegroup Symmetry
   SYMIIT  Input transformations in Int. Tables format
   SYMRDU  Remove duplicate transformations
   SYMPNI  Print message for non-integral rotations
   SYMPAR  Set parameters for the symmetry routines
   SYMDSM  Delete symmetric molecules from the soup
   SYMGCA  Toggle CA-only flag for GRA options in SYMTRY menu
   SYMISG  Input the space group via the keyboard
   SYMNEA  Find transforms. that create "NEAR" molecules
   SYMCGP  Check if transformations form a closed group.
   SYMDNT  Delete syms that do not produce touching mols.
   SYMPIC  Translate transformations to the unit cell.
   SYMANA  Analyze bad inter-symmetric contacts.
   SYMAMB  Disambiguate cells unsing bump analysis
   SYMMOV  Move a residue into close contact
*
*       VDW module messages
*
   VDWATT  (Re-)sets the VdW radii according to atom type
   VDWBB   (Re-)sets VdW radii for the backbone without =O
   VDWBBO  (Re-)sets VdW radii for the backbone =O
   VDWSS   (Re-)sets VdW radii for the side chains
   VDWCA   (Re-)sets VdW radii for the alpha carbons
   VDWRNG  (Re-)sets VdW radii for a range of residues
*
*       PARAMS module messages
*
   LINCOL  Colour of lines made with screen option .LINE
   LINMOD  Line type for the lines made with screen option .LINE
   AA1OR3  Amino acid output in 1 or 3 letter code flag
   INSFLG  Amount of sequence output flag in SCNSDB menu
   VDWOVR  Bump/contact distance between Van der Waals radii
   DFBFAC  Default B-factor
   CYSCYS  Do/don't use inter chain cys-cys bridges
   NEICON  Use covalent neighbours in BUMP/CONTAC like options
*
*       PARDG module messages
*
   DGCERR  Maximal Ca-Ca distance misfit allowed
   DGTERR  RMS Ca misplacement allowed
   DGSHWT  Maximal number of hits to be shown by DGSHOW
   ADDFIT  Additional backbone fit flag
   MXCAER  Maximal Ca misplacement after real suppos
   INANCH  Number of anchoring residues at each side in DGINS
   USEACC  Should accessibility constraints be used?
   LOWACC  Lower limit on accessibility of database hit
   HGHACC  Upper limit on accessibility of database hit
   CNTERR  Maximal error in DGCONT option
*
*       PARCON module messages
*
   CONLIN  Draw lines to indicate bumps or contacts
   FRMCOL  Colour of frame around plot
   SEQCOL  Colour of sequence characters in frame
   NEICOL  Colour of neighbouring residues after picking
   CACFLG  Flag for making Ca-crosses or not
   1O3FLG  Flag for one or three letter code residues
   HOFFLG  Flag to skip lower triangle
   CACCOL  Colour of ca-crosses in squares
   BOXTYP  Type of boxes in graphics
   SHOPAR  Show parameter values
*
*       PARQUA module messages
*
   LEVOUT  Level of output in Quality Control
   SKPNEI  Skip main chain of neighbours or not flag
   WEIGHT  Flag for type of neighbour weighing
   WAYQUA  How to give values, nearest point or convolute
*
*       PARSCN module messages
*
   HITBBF  What to show of the hit itself?
   HITNAF  What to show of the hits environment?
   SCONTP  SCNCON on one residue or whole stretch?
   HITOUT  Flag to determine where SCNGRN hits should go
*
*       PARGRO module messages
*
   MINTYP  Energy minimization method
   STEPS   Number of energy minimization steps
   NEWGRD  Steps per new gradient
   ISHAKE  Flag for using SHAKE or not
   MINDIF  Minimal allowed energy difference between steps
   STPSIZ  Step size in steepest descent minimization
   MAXSTP  Maximal step size in steepest descent minimization
   RCUTP   Cutoff radius for the pair list generation
   RCUTL   Cutoff radius for long range coulomb interaction
   TEMP    Temperature during md run
   TEMPER  Maximal deviation of temp in MD run
   MDSTEP  Number of picoseconds in an MD run
   HTSTEP  Number of heatup steps in an MD run
   FIXCAS  Fix alpha carbons flag
   FIXFRC  Force with which to fix alpha carbons
   LEVUSE  Determines level of interaction
   TRAJEC  Flag for writing trajectories or not
   TRASTP  Number of MD steps per written trajectory
   HPLACE  Determines how hydrogen positions are generated
   MDINIT  Determines how the MD run is initialised.
   XTCASC  Determines how trajectories are written
*
*       PARBLD module messages
*
   BLDTYP  Flag for guided or default building
   HELIX   Build with helical guide angles (-57,-57,180)
   SHEET   Build with strand guide angles (-150,150,180)
   BLDPHI  Phi in case of guided building
   BLDPSI  Psi in case of guided building
   BLDOME  Omega in case of guided building
*
*       PARWAT module messages
*
   NAYWAT  Flag for .NAYB action in case waters are involved
   NEWGRP  Flag for making new water groups or not
   NETDST  Water-water distance cutoff in NETWAT option
   VDWDST  VdW-VdW distance cutoff in other WATER options
*
*       PARPLT module messages
*
   LINTYP  User defined or colour dependend line types
*
*       PARHBO module messages
*
   DONACD  Maximal donor acceptor distance
   HYDACD  Maximal hydrogen acceptor distance
   ANGERH  Maximal error in donor - hydrogen - acceptor angle
   ANGERA  Maximal error in hydrogen - acceptor - X angle
   HBOTYP  Mode for drawing hydrogen bonds
*
*       HYDMOM module messages
*
   WINDOW  Width of the window
   PROPTY  Property type number
   ANGLEM  Repeat angle for moment calculation
*
*       PARNEU module messages
*
   TEMPNW  Initial 'temperature' of the training
   TEMPNE  Maximal allowed deviation in TEMP
   LINEAR  Toggles the linear mode of the net ON/OFF
   ROBUST  Toggles between quadratic and robust errors
   SMTERR  Toggles between quadratic and cubic errors.
*
*       PARTRA module messages
*
   PCWHAT  Determines what can all be picked in a trajectory
*
*       PARACC module messages
*
   ACPREC  Precision for accessibility calculations
   ACCTYP  Type of accessibility calculation
   LIMBUR  Limit for a residue for being called buried
   USESLF  Do or do not add 'own' molecule to environment
   WATRAD  Radius of the water probe
   OUTACC  Flag for output of accessibilities in PDB file
*
*       PARSUP module messages
*
   MINLEN  Minimal number of residues needed in a stretch in MOTIF option
   MAXERR  Maximal pairwise alpha carbon misfit allowed
   RMSERR  RMS pairwise alpha carbon misfit allowed
   NONHEL  Required number of non-helical residues in fragments
   LENHOM  Number of consecutive residues used in SUPOPT
*
*       PARREF module messages
*
   NCYCS   Number of cycles
   NITS    Number of iterations per cycle
   ZSCO    Desired maximal Z score on any parameter
   REFLEV  Sophistication level of REFI
   FIXREF  Force by which FIXed atoms are pulled back
   WRNLEV  Sigma cutoff above which WHAT IF starts mumbling
   USEBAD  Repair also bad atoms or patch up good ones only
*
*       PARGRE module messages
*
   ARRFAC  Scale factor for arrows 
   ARRLIN  Number of sides of an arrow
   ARRCOL  Colour of arrow
   ARRLNP  Length of arrow point
   ARRLNS  Length of arrow base
   ARRTHP  Thickness of arrow point
   ARRTHS  Thisckness of arrow base
   RADIUS  Radius of PLUTO atomic spheres
   STICK   Radius of the PLUTO sticks representing bonds
   LINES   Number of lines making up the PLUTO bond sticks
*
*       PARGRI module messages
*
   ALHY    Hydrogen bonded hydrogen polariaability
   EFHY    Number of electrons per hydrogen bonded hydrogen
   IHVA    Energy parameter mode for hydrogen bonded hydrogen
   QQHY    Charge of hydrogen bonded hydrogen
   VDHY    Hydrogen Van der Waals radius
   SHOPAR  List the values of the parameters

   CLER    Clearance in angstroms around the target
   DPRO    Dielectric constant of macromolecule
   DWAT    Dielectric constant of solvent (water)
   EMAX    Energy value inside macro molecule
   FARH    Distance cutoff for hydrogen bonds
   FARR    Distance cutoff for lennard jone interactions
   KWIK    Turbo boost flag
   LENG    Length of output tables
   LEVL    Amount of output flag
   LIST    Needed in case of multiple runs for one grid
   NETA    Number of extra target atoms
   NPLA    Number of grid planes per angstrom
   NUMB    Number of minima listed per section
   SECLOW  Lowest section to be calculated
   SECHGH  Highest section to be calculated
*
*       PARWAL module messages
*
   GAPOPE  Gap open penalty for sequences
   GAPELO  Gap elongation penalty for sequences
   PRFOPE  Gap open penalty for profiles
   PRFELO  Gap elongation penalty for profiles
   SEQSCO  Minimal sequence identity score in GENPRF
   PRFSCO  Minimal profile convolution in GENPRF
   CHRSIZ  Character size for PRETY* options
   LIMBOX  Number od identities needed for boxing in PRETY*
   RESLIN  Number of residues per line in PRETYP
*
*       PARCOL module messages
*
   LOWCOL  Lower colour of a colour range (1-360)
   HGHCOL  Higher colour of a colour range (1-360)
*
*       PARCNL module messages
*
   ANGLEC  Courseness of the triangulation of the surface
   CONRAD  Radius of the probe used to define the surface

Colour table

What if reads colours as numbers between 1 and 360. The following colours conversion is used:
     0    blue
    60    purple
   120    red
   150    orange
   180    yellow
   240    green
   360    blue
When you choose numbers inbetween, you will get colours inbetween. These colours are all fully saturated, if you want to mix in some white, you should use the SATURA parameter (see chapter on parameter settings).

Example of a 3SSP file

The following is an example of a 3SSP file. The comments after a esclamation mark are added later by hand. The sequence lines are 100 characters long in the 3SSP file. They have been truncated for this writeup.
  WHAT IF> GENERATED 3SSP FILE
 ## 136 ## 1GOX     ! Name of the database file used as master molecule
          1         2         3         4         5         6 !sequence #
 MEITNVNEYEAIAKQKLPKMVYDYYASGAEDQWTLAENRNAFSRILFRPRILIDVTNIDM !sequence 
     TTTHHHHHHHHHT HHHHHHHH  TTT HHHHHHHH3333SSS    T   T  S  !DSSP
   
          1         2         3         4         5         6
 TIMTLSSWATSSVEEVASTGPGIRFFQLYVYKDRNVVAQLVRRAERAGFKAIALTVDTPR
   SSS TT TT HHHHHTT    SSSSS  STTHHHHHHHHHHHHHTT  SSSSS T TT
   
          1         2         3         4         5         6
 SLSWKDVAWLQTITSLPILVKGVITAEDARLAVQHGAAGIIVSNHGARQLDYVPATIMAL
 T  HHHHHHHHHH  T SSSS   THHHHHHHHHTT TSSSS  333TTTTT   HHHHH
   
          1         2         3         4         5         6
 PVVFSLAAEGEAGVKKVLQMMRDEFELTMALSGCRSLKEISRSHIAADWD
 HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHT TSTTT  333SSSTT 
   
   
   
 ##  1  156B AA= 100   ! name of the first database file tested
  ++++ MAXIMAL NUMBER OF SINGLE HITS:          52 
   ! AA=100 means that 156B has 100 amino acids.
   ! the line ++++ MAXIM... etc. means that if only single alpha
   ! carbons are looked at, 52 can be superposed simultanuously.
   ! this of course is scientifically insignificant. However if 
   ! this number reaches 90 percent of the full length, you might
   ! want to inspect this alignment by hand because WHAT IF might
   ! have missed the answer.
   
 ##  2  1ABP AA= 306
  ++++ MAXIMAL NUMBER OF SINGLE HITS:         123
   
   
 ##  3  1CC5 AA=  83
  ++++ MAXIMAL NUMBER OF SINGLE HITS:          54
   
   
 ##  4  1CRN AA=  46
  ++++ MAXIMAL NUMBER OF SINGLE HITS:          46
   
   
 ##  5  1CTF AA=  68
  ++++ MAXIMAL NUMBER OF SINGLE HITS:          57
   
   
 ##  6  1FX1 AA= 147
  ++++ MAXIMAL NUMBER OF SINGLE HITS:         103
          1         2         3         4         5         6
 PKALIVYGSTTGNTEYTAETIARQLANAGYEVDSRDAASVEAGGLFEGFDLVLLGCSTWG
  SSSSS S TTTHHHHHHHHHHHHHHTTT SSSSS TTT   TTTTTT TSSSS S SS 
   
          1         2         3         4         5         6
 CGAVDAIEEKLKNLGAEIVQDGLRIDGDPRAARDDIVGWAHDVRGAI                                                     
 THHHHHHHHHHHTTT SS T  SSSST 3333HHHHHHHHHHHHHH 
   ! The fact that a sequence is shown means that WHAT IF has 
   ! has found a 3-D alignment
 ##L  88 GLY (88  ) <->  41 GLU (42  ) TILL   92 THR (92  ) <->  45 LEU (46  )
   ! This line indicates that residues 88-92in the master molecule 
   ! fall on top of 42-46 in 1FX1. The numbers between brackets
   ! give the name of the residue in the PDB file.
 GEYAT  ! sequence in master structure
 HHHHH  ! DSSP for sequence in master structure
 EAGGL  ! sequence of matched fragment in database hit
   TTT  ! DSSP for matched fragment in database hit
 ##L 108 TRP (108 ) <->  70 PHE (71  ) TILL  112 SER (112 ) <->  74 PHE (75  )
 WATSS
 T TT 
 FIPLF
 THHHH
 ##L 138 ALA (138 ) <-> 105 ASP (106 ) TILL  154 LEU (154 ) <->  90 PHE (91  )
 AQLVRRAERAGFKAIAL
 HHHHHHHHHTT  SSSS
 DAIEEKLKNLGAKVACF
 HHHHHHHHTTT SSSSS
 ##L 293 ALA (302 ) <->  29 GLY (30  ) TILL  299 GLY (308 ) <->  35 ARG (36  )
 AAGVFIG
  TSSSS 
 GYEVDSR
 T SSSSS
   
  .....
  .....
  .....   
   
 ## 23  1UBQ AA=  76
  ++++ MAXIMAL NUMBER OF SINGLE HITS:          51
   
   
 ## 24  ESEC AA= 274
  ++++ MAXIMAL NUMBER OF SINGLE HITS:         197

The whatif data structure

Data structure description

The main data structure for WHAT IF is the soup. This appendix describes this soup, the molecules-residues-atoms in it, as well as several of the key variables needed to undestand the program, and some of the key routines that operate on the soup.

Molecule level

The soup consists of molecules. There can be MAXMOL molecules, MAXMOL is a parameter set in the include files. Every molecule has a name stored in the array SOUNAM(). The array SOUADM(,) holds some information about the molecules in the soup. The following is stored for molecule ISOUP in SOUADM(,):
SOUADM(ISOUP,1)   pointer to first residue in molecule
SOUADM(ISOUP,2)   pointer to last residue in molecule
SOUADM(ISOUP,3)   number of residues in the molecule
SOUADM(ISOUP,4)   number of atoms in the residue
SOUADM(ISOUP,5)   molecule type:
                  1) protein
                  2) multi atomic drug or ligand or co-factor (simply 
                     called  drug throughout this writeup)
                  3) DNA or RNA
                  4) single atomic drug ligand or co-factor
SOUADM(ISOUP,6)   pointer to first connectivity in drug connectivity 
                  table
SOUADM(ISOUP,7)   pointer to last connectivity in drug connectivity 
                  table. These two pointers are only set if 
                  souadm(isoup,5)=2
SOUADM(,) is an integer array.

Residue level

Proteins and nucleic acids are subdivided in residues. The soup can hold up to MAXAA residues. Every residue, drug or water is an entity. The soup can hold up to MAXRES entities.

The soup is organized such that proteins and nucleic acids come first, thereafter come the drugs, and finally the water molecules. This of course is not needed as you will see when you read this appendix carefuly, but it makes it easier to add subroutines to the program on the long run this way.

At the entity level several arrays are being used. For entity IAA the following information is kept in common:

PNTAAS(IAA)   pointer to first atom in IAA. (INTEGER).
PNTAAC(IAA)   pointer to  alpha  carbon  in  IAA  (if IAA  is an amino 
              acid). (INTEGER).
PNTAAE(IAA)   pointer to last atom in IAA. (INTEGER).
CHAINN(,IAA)  CHAINN(1,IAA)=1 for  the N-terminal  residue in a chain,
              The C-terminal residue becomes 3. All other residues get
              the value 2.  CHAINN(2,IAA)  contains  the number of the
              molecule of which this residue is a part.
ONESA3(IAA)   type  indicator  of the entity.  For amino acids this is 
              ALA,  CYS,  etc.  For nucleic acids DCYT,  DGUA,  etc is 
              used.  No rules for nomenclature exist for drugs. Waters 
              are called H2O. (CHARACTER*4).
ONESA1(IAA)   holds  the  character*1  representation  of  ONESA3(). I 
              don't  think this  array  is  ever  used yet in WHAT IF.
              (CHARACTER*4).
NUMNAM(IAA)   This  is  the user given  name to  the entity.  No rules 
              exist, but it is best to keep all NUMNAM()'s in the soup 
              unique.  Mostly NUMNAM()'s  are just sequential numbers.
              (CHARACTER*4).
ACCDON(IAA)   flag that  becomes  true  if the  accessibility for this
              entity has been calculated. (LOGICAL).
AAISOK(IAA)   flag  that  becomes  true if the checks for nomenclature
              and completeness are all ok for a residue. (LOGICAL).
SPHRAD(,IAA)  information about  the smallest sphere that can hold the
              entity. The first three numbers  are  the x-, y-, and z-
              coordinate  of the center,  and the fourth coordinate is 
              the radius. (REAL).
SUMACC(IAA)   holds the sum of the accessibilities of all atoms in the
              entity. (REAL).
PRPVAL(IAA)   The property moments (see the appendix on hydrophobic or
              property moments) are stored in this array. (REAL).
XYZCAS(,IAA)  This  array  is often  used to temporarily store the x-, 
              y- and z-coordinates of the alpha carbons of amino acids
              in case they need to be changed for a short time (REAL).
CHIANG(,IAA)  holds phi,  psi,  omega,  and chi-1 till chi-5 for amino
              acids. (REAL).
ETMTOT(,IAA)  holds for  every energy  term the sum  of all individual
              atomic contributions. (REAL).
AMODEL(IAA)   flag that is true if  IAA  is activated for  the working 
              model. (LOGICAL).
LOCHST(IAA)   secundary structure determination by DSSP (CHARACTER*1).

Atomic level

At the atomic level the following arrays are being used:
XCOORD(IAT)   x-coordinate of atom IAT. (REAL).
YCOORD(IAT)   y-coordinate of atom IAT. (REAL).
ZCOORD(IAT)   z-coordinate of atom IAT. (REAL).
XBFACT(IAT)   crystallographic b-factor. (REAL).
ACCESS(IAT)   atomic accessibility for water. (REAL).
WEIGHT(IAT)   occupancy. (REAL).
VDWRAD(IAT)   Van derWaals radius. (REAL).
ONESAT(IAT)   name of the atom, eg. CA, N, P, CD1, etc. (CHARACTER*4).
ATCOLR(IAT)   colour of IAT (0-360). (INTEGER).

Counters

The following counters are needed in order to know how much matter is present in the soup:
NUMAAT        total number of entities.
NUMAAF        total number of residues.
NUMATF        total number of atoms.
NUMCOF        total number of drugs.
NUMCON        total number of drug connectivities.
NUMSOU        total number of molecules (excluding waters) in the soup

Example

To loop over all molecules, and then for every molecule over all its residues (for drugs this is always one of course), and finally for every residue over all its atoms, you need the following nested loops:
      DO 30 ISOUP=1,NUMSOU
         DO 20 IAA=SOUADM(1,ISOUP),SOUADM(2,ISOUP)
            DO 10 IAT=PNTAAS(IAA),PNTAAE(IAA)
               here you can do something with the atom
   10       CONTINUE
   20    CONTINUE
   30 CONTINUE
      IF (NUMH2O.GT.0) THEN
         DO 40 IH2O=PNTAAE(NUMAAT)+1,NUMATF
            here you can do something with a water molecule
   40    CONTINUE
      END IF