GHS Version 10.50 Update

New features, changes, and bug fixes since version 10.00

=========== MAJOR NEW FEATURES =========

Major Condition Graphics Performance And Appearance Improvements

DISPLAY STATUS produces report file output that is much smaller and prints much faster than before, as well as higher quality. PDF output files are 6 to 20 times smaller. The previous behavior can be obtained using the new PRINT /SLOW parameter.

DISPLAY STATUS now shows the exact outline of all shapes, instead of approximating using the maximum width for indented shapes like bulbous bows.

DISPLAY STATUS legend box formatting is now much more reliable and compact.

DISPLAY STATUS reference point circles were made smaller and the waterline shown on either side of the vessel were slightly extended for increased visibility.

DISPLAY STATUS BODY @ section shows any critical points when they are located longitudinally at the given section.

DISPLAY STATUS /SYNC[:ratio] and LOAD EDIT /CG[:ratio] optional subparameters were added to specify the ratio of the height of the Condition Graphics window to height of the main program window. If not present, a default ratio of 1 is used, unless the main window is so wide that the CG window must partially overlay it, in which case the CG window is reduced so it won't unduly obstruct visibility of the main window.

CHANGE (tank) /COLOR:n parameter now specifies the tank's color in Condition Graphics, overriding any CONTENTS /COLOR value.

New Condition Graphics Integration Within Existing Report Pages

DISPLAY STATUS writes to the end of the current report page if enough room, so PAGE should be done prior to DISPLAY STATUS if a full page used only for Condition Graphics is required.

DISPLAY STATUS /PAGE%:n parameter was added to restrict output to the given percentage of the available print page. Subsequent DISPLAY STATUS /PAGE%:n commands append to the same page if the total does not exceed 100% (and if nothing else was written to the report in the interim). The /PAGE% parameter can be omitted on the final DISPLAY STATUS command to fill out the remainder of the page. The legend box is suppressed except for the final area on the page; to skip the legend box entirely, use /PAGE% percentages that total less than 100%.
New /EMAIL Parameter For Emailing Reports

COPY [attachfile...] /EMAIL[:toadr...] [/SUBject:"subject"] [/BODY:[@]body] [/CC:ccadr...] [/BCC:bccadr...] was added to send emails via the default MAPI mail server application using the specified TO/CC/BCC address lists, attachment file list, subject heading, and body text. If the body begins with "@", then the text is read from the specified body file (with CR separating paragraphs). Email addresses are converted to lowercase unless enclosed in quotes, in which case the form "Full Name <address@domain>" is supported.

PRINT [file] /EMAIL[:toadr...] was added to email the specified print file (or current report file if blank) as a Preformatted Print File with ".PPF" extension (which can be printed or previewed using the PRINT command). Any COPY /EMAIL slash parameters may be used with the PRINT /EMAIL command.
New Support For Double-Clicking .RF, .GF, And .PF Files

Standard GHS installation assigns double-clicked documents with .RF extension to run in GHS, with .GF extension to open in Section Editor, and with .PF extension to open in Print Preview. The same behavior applies to extensions with a single digit appended (so TEST.GF1 opens in SE32). Likewise .GFT extension behaves like .GF, and .PPF extension behaves like .PF. To remove these assignments, run UNREGTYP.EXE in your GHS program directory. To restore these assignments if changed by some other application, run REGTYP.EXE in your GHS program directory.

GHS main program command line transparently previews a print file ending in ".PF?" or ".PPF", and opens in SE32 a geometry file ending in ".GF?".

New Region-Aware Default Units And Date Format

UNIT default is Meters and Metric Tons outside the United States.

In metric units, the meters and centimeters abbreviations are now shown in lower case.

REPORT default date format for page headers is controlled by the regional options set in the operating system.

MESSAGE DATEFORMAT Year-Month-Day command was added to change the date format. Year, Month, and Day can appear in any order, separated by "-", "/", or ".".

New Programmable KEY Footer Push Buttons

KEY command assignments are now shown at program startup as a collection of push buttons in the footer, with each key's label on the button face and with the button border only appearing when the mouse hovers over it. A footer button's function key or control key shortcut can be seen by right-clicking it.

New HMMT WIND /BAND Method Accounting For Shielding

HMMT WIND /BAND[:bandwidth] [/COMBINE] offers an alternate method of deriving wind heeling moments from the geometry.

The other HMMT WIND parameters /C1, C2, etc and /GUST can also be used with the /BAND parameter. This method accounts for shielding between components, and if the /COMBINE parameter is present it also accounts for shielding between parts. It calculates the wind force using horizontal bands. The wind pressure at the height of the center of each band is applied. The band width may be specified, or the default 0.1 meter (0.328 foot) may be accepted. Larger band widths reduce accuracy but calculate more quickly. AXIS rotation is permitted.

Compared to the traditional non-band method in GHS (which takes lateral projections of all components without consideration of shielding and applies wind pressure at the center of each component), the band method has the greater accuracy when there is overlapping of components in the wind plane. In typical models where the ship's exterior is represented by several components, the traditional method increasingly overstates the lateral area as the heel angle increases. The accuracy of the band method is not generally affected by the ship's attitude in either heel or trim. However the band method does tend to overstate the wind plane area by approximately 5% at the default band width setting.

A caching mechanism is now in effect for heeling moments derived from the wind through the geometry. This increases the speed of righting-arm curve calculations and the MAXVCG process.

New Damage Stability Support For Cargo And Passenger Vessels

Two additional variations of DAMSTAB /SDI are now available to implement the SOLAS amendment MSC.194(80): /SDI194C for cargo vessels, and /SDI194P for passenger vessels.

The full set of available parameters for the cargo version is,

DAMSTAB [(div list)] /SDI194C [/L: l1,l2] [/B: b] [/H: hmax]      [/STOP[:n]] [/DLL:loadline draft] [/MACRO:name] [/QUICK]

And for the passenger version,

DAMSTAB [(div list)] /SDI194P [/L: l1,l2] [/B: b] [/N: n1[,n2]] [/H: hmax]      [/STOP[:n]] [/DLL:loadline draft] [/MACRO:name] [/QUICK]

Only the final survivability is implemented. It is recommended that survivability be computed using a macro (/MACRO parameter).

DAMSTAB /SIDE:Port|Starboard parameter was added to specify the side of damage (for example, DAMSTAB /SDIC /SIDE:P). If not specified, the side having the most tanks as listed in the DIVISION command(s) is used, or starboard if both sides are equal.

DAMSTAB /SDI has a new parameter: /NOREQ which causes it to omit any consideration of the required index. If this parameter appears, the process continues until flooding has progressed to the point where no increment to the attained index is being made, or the number of divisions specified in the /STOP parameter has been processed.

New Features For AXIS Location

AXIS MINGM finds the axis where the GM is minimum.

AXIS MINE:angle [/BOTHdir] finds the axis where the energy is minimum at the specified heel angle which must be either RA0 or MAXRA. If /BOTH is included, heel in both directions is checked. Otherwise heel goes in the direction indicated by the loading or if that is symmetrical, by the ANGLES list. When complete, the heel direction in which the minimum energy was found is indicated by the direction in the ANGLES list.

AXIS angles are no longer restricted to 90 degrees. The entire range (internally converted within plus and minus 180 degrees) is now available.

HEEL MAXRA sets the heel angle to the angle of maximum RA on the current axis.

HEEL RA0 sets the heel angle to the angle at the second intercept on the current axis.

VARY AXIS:method allows RA and MAXVCG processing to vary the axis angle as it proceeds. Three methods are available: VARY AXIS:MINASCENT follows the least ascent in the residual righting moment; VARY AXIS:MINGM increments heel in the direction of least GM; and VARY AXIS:ZEROTRIM adjusts the axis such that the trim remains zero. FIX AXIS restores the default behavior.

MAXVCG /AXIS:MINRA finds a new axis where the maximum RA is minimized at the maximum VCG for each displacement.

HMMT specifications are now associated with the current axis setting. If the axis is changed to an angle where HMMT has not been specified, the heeling moment is interpolated using the two sets of HMMT data on either side of that axis. This does not apply to HMMT WIND, TURN or TANKS.

New Pressure Features For TYPE BUBBLE

LOAD /PRESS:p sets TYPE BUBBLE tanks to the desired pressure p in atmospheres (note that the primary load parameter is omitted). This adjusts the gas quantity so that the given pressure creates the tank's liquid load such that the internal and external pressures are balanced at the reference point.

A new system variable LOAD2 returns the actual load fraction in the current tank. Note that the existing LOAD variable returns the formal load setting which may differ from the actual load, and for bubble-type tanks is now always undefined.

A new system variable BPRESS returns the pressure in a bubble-type tank (in atmospheres).

TYPE BUBBLE tanks can now have more gas in the bubble. At zero liquid load, (100% gas) the pressure can now be greater than one atmosphere, in which case the nominal liquid load will be negative. However since the nominal load for bubble tanks does not appear in reports, the negative value should be of no concern.

New Heel Angle For TYPE FROZEN Tanks

The TYPE FROZEN command now allows a parameter to set the heel angle within the frozen tank: TYPE FROZEN /HEEL:h sets the heel angle to the specified value. This is particularly useful for tanks where the frozen contents name has a "!" suffix which locks the heel angle, preventing it from being changed by other means.

New Deck Edge Marking for CC Cross Curves

CC /MARK:FLood|DEckimm parameter was added to specify whether lowest flooding critical point (default) or deck edge is marked in the last two table columns.

New TANKS Box Location Selection

TANKS command when used to set a default tanks selection can now have qualifying slash parameters defining a box which excludes all tanks named in the given list but lying entirely outside the box. These parameters are, /ENDs:l1,l2 /INboard:t1 /OUTboard:t2 /BOTtom:v1 /TOP:v2. (For example, "TANKS * /ENDS: 0, 100f".)

If any of these qualifying box dimensions are given and the /INBOARD parameter is not given, its value is assumed to be zero (port-side tanks would be excluded). The default values of the other dimensions are positive and negative infinity.

New Windows Floodable Lengths FL And Tank Soundings TS

ENTER FL executes the new Windows version of the Floodable Lengths program, which supports 100 shapes, 1000 stations, and 10000 points.

ENTER TS executes the new Windows version of the Tank Soundings Calculator.

New GHS Operating System (GHSOS)

GHSOS.EXE provides basic "GHS Operating System" for manipulating external programs using dialog box systems run from ".GOS" files.

New MESSAGE SEND Between Multiple Sessions

MESSAGE SEND ON opens a channel for sending commands to concurrent sessions of GHS32 or GHSOS on the same computer. Subsequent opened sessions communicate with the first opened session but not with each other. MESSAGE SEND OFF closes the command channel for a program session. MESSAGE SEND command sends the given command line to all other sessions if issued from the first opened session, otherwise the command is sent just to the first session.

DIVISION Enhancements

DIVISION now allows tanks to be assigned to definite inboard and/or upper layers. An optional suffix is available, which if added to the tank name designates the layer to which the tank is to be assigned. The suffix has the form, :In or :Um, where n is a digit ranging from 1 to the number of inboard spaces in the division, and m is a digit ranging from 1 to the number of upper spaces in the division. Both the :I and the :U suffix may be used together. There must not be any spaces between the tank name and the suffix. For example, DIVISION T123.S:I1:U1.

Note: This feature is usually not required since the automatic assignment of tanks to layers is normally accurate. However, if it is found, for example, that an inboard space is being flooded with the wing due to geometry which changes along the length of the division, the I:n parameter may be used to override the automatic assignment.

LIMIT Enhancements

LIMIT angle keywords DI and DI0 (Deck/Margin Immersion angle) have been expanded to allow the angle for any percentage of the immersion angle to be represented. This is achieved by prefixing a whole percentage to the DI or DI0 keyword. For example, 80%DI0 is interpreted to mean 80% of the immersion angle. In addition, a new keyword, FB, standing for Freeboard, has been introduced which must be prefixed by a percentage. For example, 80%FB is the angle where 80% of the least upright freeboard is immersed (ignoring margin). The HF (Half Freeboard) keyword can still be used; it is equivalent to 50%FB. Only one DI/DI0/FB-type limit angle can exist simultaneously.

LIMIT report shows each angle in the STABILITY CRITERION column with a single decimal place unless the angle rounds to an integer.

When LIMIT RISE is in effect and there is no other reference to the angle of MAX RA, GHS now uses the absolute righting arm curve for determining the angle of the maximum. A note to that effect is added at the RA report.

New LIMIT ANGLE keyword EQUPlus represents 150% of the equilibrium angle. It may also be prefixed by a percentage between 100% and 200% (e.g. "175%EQUP") to change the default from 150%.

New form of RASR limit: LIMIT RASR AT ang1 [OR ang2 [OR ang3]] > limval. This limit applies only at the least of the given angles. At this (least) angle, the ratio of the absolute righting arm to the sine of the angle should be greater than the given limit value.

LIMIT numbers from 1 to 99 may be specified, though as before only 20 of them may be simultaneously defined.

MAXVCG Enhancements

The MAXVCG TITLE command is now effective for setting the max VCG data title when a specific criterion (LIMITS) is absent. This is useful in the case where the max VCG data is composed from more than one criterion or when the criterion was defined in a separate run. Formerly the title provided through MAXVCG TITLE was only appearing in the Load Editor. Now it also appears in the plot headers. Note that if a criterion with its own title is in effect it takes precedence over the MAXVCG title.

MAXVCG now recovers from trim capsizing due to extremely high VCGs resulting from short ranges of stability.

MAXVCG where the solution VCG was extremely high was sometimes not yielding a zero margin but rather leaving the VCG lower than it could have been.

MAXVCG print-table header expanded to include information about the heeling moment and axis-selection mechanism in use.

MAXVCG error "Need closer angles" is now much less likely to occur. MAXVCG now restores the angles list (SOLVE MAXVCG still leaves it modified so that RA /LIM can be easily used to verify the SOLVE MAXVCG result).

MAXVCG solving speed was improved for cases where the angle at max RA is difficult to determine.

REPORT Header And Footer Standardization

REPORT headers and subtitles have been standardized for all regular, plot, and CG output pages, with company information centered on the first line and vessel title centered in bold face on the second line.

PRINT footers were sometimes losing the top line of the footer box, overflowing footer text in case of disproportionately wide footer logos, failing to evenly space on either side of footer text, and reducing maximum plot length slightly more than necessary.

PRINT footers with logo but no text appear in a 6.67 inch by 0.67 inch box. Logo bitmap files this size or larger with a 10 to 1 width to height ratio (plus or minus 5% to allow for the box thickness) are stretched to fill the box.

PRINT /HEADMARGIN:inches parameter was added to specify the margin above the header in inches. The default value 0.5 inches is assumed by all GHS report generating programs, so beware that increasing header margin much beyond 0.5 inches could cause collision of report data with the footer or bottom of the page. The printer-specific minimum header top margin is used by /HEADMARGIN:0.

SOLVE Precision And Repeatability Enhancements

SOLVE precision and repeatability are greatly improved.

SOLVE /INIT parameter was added to precede solving by resetting heel and trim to zero along with any history-dependent invisible data normally used by the program to improve the efficiency of the solving process. The purpose is to ensure repeatability of results regardless of history.

LOAD EDIT /INITSOLVE parameter was added to initialize heel and trim to zero along with history-dependent data before any solving controlled by Load Editor. This does not affect any explicit SOLVE commands in Load Editor macros.

LS /INITSOLVE parameter was added to initialize heel and trim to zero along with history-dependent data before any solving controlled by Longitudinal Strength.

GHS /GMTRA Parameter Enhancements

The effect of the /GMRA parameter has been changed, as follows.

1. In the GHS command, /GMRA now causes the righting-arm-derived GMt to be reported regardless of how it compares with the waterplane-derived GMt. Formerly if the difference was small, a blended value between two was reported. However if the waterplane-derived value is less than the value reported, a cautionary note is automatically added which gives the waterplane "standard" value.

2. In the RA, MAXVCG and SOLVE MAXVCG/MAXWEIGHT commands, the /GMRA parameter now uses the lesser of the righting-arm-derived GMt and the waterplane-derived GMt.

The system variable GMTRA now returns the righting-arm-derived value regardless of the waterplane-derived value.

TEMPLATE Enhancements

TEMPLATE field /Grey[:varname] parameter allows omitting the variable name to unconditionally disable and grey-out the field.

TEMPLATE dialog boxes no long suspend IDLE macro execution. When a variable is changed in the background, any corresponding TEMPLATE field is automatically updated unless it was manually changed by the user since the last time an execution or exit button was pressed.

TEMPLATE EXPAND field now continues lines ending in "|" to the next line (other than VARIABLE or SET commands) while remaining on the same dialog row. Expanding a macro that itself contains an EXPAND field permits generation of a repetitive series of fields across a repetitive series of rows. The IF command works during expansion, just like the VARIABLE and SET commands.

TEMPLATE field /Left and /Right parameters were added to left or right justify button field labels instead of default centering. For CHECK and RADIO button fields, the /Left parameter puts the label on the left side of the button instead of the default right side (right-justifying if /Right is also present). These parameters also work for LEw /BUTTON tool template fields.

TEMPLATE field /Backcolor:n parameter was added to specify the background color for all text, image, box, button, and input fields, using color number n from 0 to 15 as described for the MESSAGE COLOR command (0=black).

TEMPLATE /Color:fn /Backcolor:bn parameters were added to specify default foreground and background colors for all text, image, box, check, and radio fields, using color numbers fn and bn from 0 to 15 as described for the MESSAGE COLOR command (0=black). The /B:bn color is also used to paint the overall background of the TEMPLATE dialog box, affecting all fields flat on the dialog but not raised push buttons, variable fields, or drop-down lists. These parameters also work for LEw /BUTTON tool TEMPLATE definitions.

TEMPLATE /POS:position string may include the tag "SAME" (e.g. /POS:SAME, /POS:SAMETOPLEFT) to display subsequent executions of the template at the same screen position where its dialog box last appeared. This has the same effect as the now-obsolete EXECUTE /SAMEPOS parameter (which is no longer documented but maintained for backwards compatibility where it doesn't conflict with other slash parameter usage, such as TEMPLATE execute button fields).

TEMPLATE field /Left, /Right, and /CENter parameters are now applicable to static text fields to override the default justification (which is left for normal text fields, and right for tags appearing left of variable fields). These parameters are also applicable to variable input fields to override the default left justification of edit text.

TEMPLATE field /Left, /Right, and /CENter parameters are now applicable to static image fields to override the default center justification.

Load Editor for Windows (LEw) Enhancements

LEw right-clicking a tank's vessel graph in Tanks mode offers a submenu for changing the tank load percentage.

LEw right-clicking a "Tank Description" field or vessel graph in Tanks mode offers a submenu for changing the tank's color (used for description text, any vessel graph reference point, and Condition Graphics display).

LEw right-clicking a vessel graph in any non-Tanks mode offers a choice to "Move CG here" for the current item (moving the LCG and VCG if right-clicking in the Profile view, or moving the LCG and TCG if in the Plan view).

LEw vessel graphs in "True aspect" view mode now display with precisely the true aspect ratio, leaving an unused grey area as necessary; previously the true aspect was targeted but then stretched to fill any extra window space.

LOAD EDIT /BUTTON:template assigns keyboard shortcuts for tool column buttons by ending the label with "|" followed by one letter for a single Alt key shortcut (e.g. "|X" for Alt-X) or two letters for a double Alt key shortcut (e.g. "|AB" for Alt-A followed by either Alt-B or B). Right-clicking a tool column button displays its keyboard shortcut assignments. Keyboard shortcuts can also be underlined on a displayed text label by putting "_" before each character that should be underlined (e.g. "_Ballast _Advisory|BA" to mark Alt-BA shortcut). A double "__" causes single "_" to appear in a text label.

LOAD EDIT /BUTTON:template labels without associated macros appear with dark grey background only if they are entirely blank, otherwise appearing with default button background unless the /B:color parameter is used.

LOAD EDIT /LOGOCOLOR:[fc][,bc] now permits specifying 6-digit hexadecimal bc for background color behind logo text fc and around LEw display areas.

LEw standard tool buttons can all be right-clicked to show their descriptions and any associated control key combinations.

New System Variables

Operating system environment variables can be retrieved using {%name%}.

BGN system variable was added to return the waterplane-normal distance from center of buoyancy to center of gravity.

BPRESS system variable was added to return the pressure in atmospheres for a TYPE BUBBLE tank.

EQUNOW system variable was added to be set to 1 whenever SOLVE is done with varying heel and trim, and reset to 0 whenever any change is made that might affect the equilibrium condition. This variable may be set by the user to override the system setting until another SOLVE is performed.

FLDNUM system variable was added to return the critical point number of the lowest flooding point. Both FLDNUM and FLDHT include weathertight points only if EQUNOW=1.

LIMNUM system variable was added to return the limit number corresponding to the least limit margin in LIMMARG (0 if no limit margin is currently defined).

LOAD2 system variable was added to return the actual load fraction in the current tank (which may differ from the formal load returned by LOAD variable). draft value is to be returned by the new DRVALU real system variable.

ROSTABH and MAXRRAH system variables were added to return the range of residual stability and maximum residual righting arm. Both apply to the range of heel angles between the present heel and the next negative-sloping occurrence of zero righting arm in the direction of the present heel.

STRMARG real system variable was added to return the percentage margin of maximum stress above any /LIMSTRESS:limit from the last LS command.

TGTHT and TGTNUM system variables were added to return height and number of the lowest TIGHT (weathertight) critical point.

======= Minor New Features =======

CUSTOM (GHSERIAL) now supports $TYPE AN-PRO3 protocol (in "Fixed TX" broadcast mode) along with $TYPE Sentry IV. The following new configuration parameters were added for the GHSERIAL.DAT file: $STARTCHAR value - ASCII value of start of packet character. $SEPCHARS value,... - ASCII values of allowed field separator characters. These parameters only need to be configured if they differ from the default specified the protocol (requires updated GHSERIAL.DLL and permissions).

DAMSTAB /SDI was not going beyond about 30 divisions even when more than 30 were defined. The limit on the number of divisions has been increased to 75.

DAMSTAB /SDI now handles penetration across the centerline more consistently.

DAMSTAB /SDI now ignores portions of tanks above the horizontal bulkhead specified by the DIVISIONS /HBDH parameter when finding their most-outboard point.

EDIT command now works with long file names containing spaces.

ENTER PM now works under Windows XP x64 and Windows Vista using automatic DOSBox emulation (requires DOSBox loaded in GHS program subdirectory).

ERASE /NORecycle parameter added to prevent erased files from being recycled. ERASE (without /NORecycle) is now the only GHS command which recycles files.

ENTER BARGE [paramfile [geofile]] [/WAIT] now runs BARGE.EXE to generate geofile from paramfile (defaults BARGE.GF1 and BARGE.PAR); optional /WAIT waits to show hull generation information (requires HM module).

File extension for the default program library file has been changed from ".LIB" to ".LF" (for example, GHS.LIB is now GHS.LF). If GHS.LF is missing but GHS.LIB exists, then GHS.LIB is copied to GHS.LF, and a message is inserted at the beginning of GHS.LIB indicating that it has been superseded by GHS.LF.

GHSCOM now supports the END, EXECUTE, EXIT, and MACRO commands.

HMMT REPORT has been improved to represent port-side heeling moments in a more straightforward manner, and to include all types of heeling moment.

LS no longer restricts the number of weight density points by trapping "Too many weight density points".

LS report title is abbreviated if necessary to avoid truncation.

MB SOLVE SECONDARY channel,p,s connects using commmand-only mode if either p or s is zero, or if both are negative. The p and s numbers must be between 0 and 99, but no longer have to be defined as Critical Point numbers for command-only mode.

MESSAGE PLOTLABEL "labelX", "labelY" no longer uses a general scale when only two columns are present, instead placing "labelX" and "labelY" alongside the plot's axes with no legend or arrow markers, ignoring any "%" in labels.

Model Converter supports FIXUP of AutoHydro modified .GF files with the following problems: illegal characters such as spaces in part and component names (converted to "_"); more than 12 characters before "." side suffix in part and component names (shortened with a warning message); "L:" or "W:" information given as zero (line ignored).

Model Converter importing of HEC file format increased maximum number of stations from 125 to 1000.

MC /PTOL%:tolerance parameter was added to specify the tolerance (default=1%) for removing redundant points as a percentage of the sum of the maximum width and height of the vessel. A point is susceptible to being removed if it is separated from roughly-collinear adjoining points by less than this tolerance distance.

PRINT CONFIGURE DEFAULT restores use of the Windows default printer.

PRINT command no longer shows plot info lines in the screen's command area.

PROJECT projdir [(datadir)] command supports quotes around projdir and datadir, allowing long file names including spaces within projdir and datadir.

Project menu has been redesigned to be more intuitive and useful, including project browsing and a list of most recently-used projects for quick access.

RA plots show a vertical hair line at the angle of deck immersion (even in /GRAPH:CLEAN mode).

READ command recognizes "C" or "F" suffix on "OIL@temperature" contents description; if omitted, the unit setting determines whether Centigrade or Fahrenheit is assumed.

SCREEN ROWS default minimum number of rows for the command area and Load Editor spreadsheet has been raised from 2 to 4.

STATUS /PERMFOOT parameter was added to cause the usual "Permeability override" notices to be omitted and instead appends a note saying "Permeability changes are in effect".

TC /SOUND now works with loads provided through ullages as well as loads provided through load fractions. This allows both ullages and soundings to be in the same TC table.

======= Bug Fixes =======

CONTENTS command was mishandling temperatures in metric mode for alternative petroleum substances with names larger than 4 characters in metric mode.

DAMSTAB /SDI with very short division lengths was causing the division sequence to repeat endlessly.

DAMSTAB /SDI /QUICK was not resetting the list of tanks to be flooded between cases.

DAMSTAB /SDIC /MACRO was storing unnecessary leading spaces in the DAMSTAB_TANKS variable.

DAMSTAB /SDI now assumes starboard-side damage when a division's tanks are equally on the port and starboard sides.

DAMSTAB /SDIC /MACRO was not protecting the report against negative range values from the macro (zero is now substituted).

DISPLAY STATUS plan and profile views were fixed to prevent fill color from leaking out of narrow or oddly-shaped components, to prevent contents color from flooding over the waterline into the top part of a curved tank as if it were full, and to show the correct fore and aft contours of each shape.

DISPLAY STATUS body view was fixed to properly color double components containing separate port and starboard lobes, and to correctly fill the waterline for oddly shaped components.

DISPLAY STATUS PROFILE @ angle was trapping "Real number required" if the angle had a "S" or "P" suffix.

DISPLAY STATUS printout was sometimes trapping "Missing a coordinate".

DISPLAY STATUS plan/profile slice printout was showing labels in random locations for tanks not intersecting the slice.

DISPLAY STATUS printing with no footer present was not using the full size of the page (reducing as if a 12 line footer were present); a slightly larger print region is also used when a footer is present (since 9.84A only).

DISPLAY STATUS /SYNC was not properly updating for vessel angle changes if the initial waterplane was undefined or flat.

DISPLAY STATUS immediately followed by a NOTE command with a report open was writing the note text alone on a page without a page header (since 9.38 only).

ENTER TSX, GS, and PMX were hanging if a report file was open (since 9.64 only).

ENTER for certain accessory programs were occasionally trapping "Invalid location" run-time error (since 9.60B only).

ENTER program runfile converts the "runfile" parameter to short file name version if necessary for passing to Part Maker.

ENTER PM was setting the ERROR system variable to zero if the geometry file was changed (since 9.68B only).

ENTER GS was improved to work starting in long file name directories, have a uniform border color, and have slight margin at the top of its graphs.

Error reporting no longer truncates long command lines.

EXECUTE template|commandline was skipping commandline if a button was pressed in the template dialog which executed a macro or subtemplate.

Fancy report printing was sometimes misformatting the second line of page headers when the title is extremely long.

Fancy reports were sometimes treating a pair of adjoining sentences separated on a line by two spaces as a pair of separately-aligned fields in a table.

FSM values of tanks in spilling mode were being reported for the surface at the nominal load setting rather than for the surface at the spill point (since 8.76C only).

GHS command report with non-zero axis was sometimes giving a spurious warning message regarding standard GMt.

GMT and GMTRA system variables no longer affect the current waterplane. Calculation of GMT derived from the righting arm curve was throwing off aberrant values in rare cases (since 9.62C only).

HELP and VIEW commands were sometimes inserting spurious blank lines into their displays.

HMMT REPORT was sometimes showing small spurious OTHER amounts when HMMT /GUST factors are used or due to tolerances in the caching mechanism. The cache is now bypassed by HMMT REPORT.

IF EOL and multi-variable READ x,... were not always behaving properly on the final line of a READ (DATA) file.

Internal ellipses ("...") copied into run files via Notepad are now readable.

LEw was not always restoring the original GHS window dimensions on exit when using a /BUTTON template so large that the LEw window filled the screen.

LEw macro errors were waiting for "Press to continue" before displaying the error message (since 9.72A only).

LEw right-clicking "Move CG here" was sometimes failing to refresh the TCG or VCG on the current weight row.

LEw "Ground Points" mode was sometimes failing to accept negative values and triggering wild solving when appending new ground points.

LEw using tool buttons was occasionally trapping "Invalid location" run-time error after returning from execution of an external program.

LEw with tool column buttons was sometimes trapping "Invalid index" run-time error when restarting itself using another LOAD EDIT /BUTTON command.

LEw was not restoring display of waterplane-derived GMt when Ctrl-R was pressed twice (in and out of RA-derived GMt mode). LEw now shows "Maximum VCG" as "unknown" if not within defined data range.

LEw "Solve" buttons were ineffective to force solving after calling a macro which changed only heeling or trimming moments.

LIMIT FLOODHT AT EQU was not always reporting the correct flooding point height at equilibrium.

LIMIT angle PRE was being treated as a lower limit rather than an upper limit which made it unusable in the MAXVCG process.

LOAD EDIT /SCREEN:MAX|MIN was not properly restoring the previous window state on Load Editor exit if an intervening macro execution had restarted LEw using another LOAD EDIT /SCREEN:MAX:MIN command.

Load Editor was sometimes trapping "GAMMA FAULT TYPE 1" error when flooding a tank set up with flood override permeability using the PERM FLOOD command.

MAXVCG /AXIS was not showing the axis angles in /COMPOSITE mode.

MAXVCG with EQU0 in the limits was, in some cases, stopping prematurely and reporting the error "Heel out of range".

MAXVCG process was not reversing the heeling moment when port-side flooding and starboard-directed heeling moments were given simultaneously.

MAXVCG interpolations were sometimes overshooting seriously in cases of quasi-discontinuities in the given MAXVCG data.

MAXVCG /TRIM:...n/ was failing to divide n by the current LWL for the last listed trim value, instead treating n as degrees (since 9.96E only).

MAXVCG tables were misformatted if more than 9 limits are defined; now any limits after the first 9 do not appear in MAXVCG tables.

MAXVCG was not running as efficiently with intact tanks loaded (which are ignored by MAXVCG processing in any case).

MAXVCG processing was not completing in rare cases when a relative LIMIT angle was exceeding 180 degrees.

MB SOLVE SEND (n) command was not restricting command transmission to the session connected to primary critical point n.

MC was trapping "Ran out of memory" when importing HEC .HUL files containing Appended Volumes with nominal zero height; now these Appended Volumes are treated as cubes.

MC was trapping "Invalid location" run-time error when converting IDF files that had duplicate stations at the first station location.

MC error reporting for defective IDF files was overwriting the station number which triggered the error.

MC was not allowing lowercase $-prefixed tags while importing IDF files.

MC file [(component)] FIXUP uses * not HULL\HULL.C as the default component.

MC /TANKORDER:OrderFile was ineffective for lowercase tank names listed in the OrderFile.

MC was sometimes trapping "System Fault 3 in module GAdd" when converting files with stations containing more than 100 points.

MC was sometimes neglecting to clean out excess points from a station.

MESSAGE PLOT report printing was trapping "Unknown keyword" if any plot data values were empty. Now any missing plot data is treated as undefined and any excess plot data is truncated.

Mouse scroll wheeling was sometimes causing a program crash on some systems.

NOTE (n) advances the report page if n is zero or the page is at least half full and there are fewer than n lines remaining on the current page, otherwise outputting a blank line. This was previously an undocumented feature, but was being triggered even when the initial "(" was omitted. Note that "\ (n)" can be used to actually output " (n)".

Possible run-time errors for mouse wheels and printer configuration were fixed.

PAGE 0 mode was being turned off by external programs, so page numbers resumed upon their return. Condition Graphics was showing pages even in PAGE 0 mode. Doing PAGE 0 immediately after a Condition Graphics returned was sending an extra line before the page header.

PRINT CONFIGURE attempts to address configuration problems with certain printers.

RA /LIM was failing to register downflooding angle in some cases when it occured at heel angles greater than 90 degrees.

RA /LIM /NOTAB table was misformatted in fancy reports.

READ command was reading any tanks with "OIL@temperature" contents description incorrectly, so an error would be trapped after a SAVE and restore.

READ file was creating an empty file and trapping "Corrupt geometry file" if a file with a long path specification doesn't exist.

REPORT opening was not turning off any MESSAGE REPFONT.

ROLL report was showing the roll period as a very large number which overflowed the field when GM is negative. Now the field is left blank when the GM is zero or negative.

SCREEN ROWS min max was ineffective when min and max values were equal.

SET LEFT, RIGHT, and SLICE operators were failing for strings longer than 255 characters.

SOLVE MAXWEIGHT /FSM was ignoring the /FSM parameter.

SOLVE limit on number of waterplane endings increased to avoid "Too many waterplane endings" error.

STATUS CRTPT:BRIEF now works properly. Formerly it was not reporting any critical points: it now reports the lowest.

TEMPLATE EXPAND was failing for VARIABLE command followed by parentheses without an intervening space.

TEMPLATE EXIT macro field, used by itself without a label, was disappearing unless used as the last field of a template, in which case it assigns a macro for the default "OK" button (since 9.40B only).

WRITE command was not reliably saving TYPE CALIBRATED information, but for uncalibrated tanks was sometimes writing spurious TYPE CA lines which have no effect in the usual case where property tables are absent from the geometry file (since 9.98H only).

WRITE (SAVE) avoids a conflict of "OIL @ temp" uses by writing the contents table before the tank parameter settings.

GHS32 clicking above the command line in a blank part of the display was temporarily changing the color of command line input from cyan to the message color (since 9.96B only).

GHS32 was sometimes hanging when the program was closed while waiting for "Press to continue" following an error.

GHS32 was always starting in a normal window even when run from a shortcut that specified a maximized window.
Previous Version Update Features

Copyright (C) 2008 Creative Systems, Inc.