GHS Version 14.50 Update

New features, changes, and bug fixes since version 14.00

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

New STABILITY Sheet Reports for Criteria

A significant addition to the STABILITY command addresses some of the common energy and weather stability criteria. The command,


automatically evaluates the current loading condition against the given criterion, which is represented by the criterion code given.

The list if currently-available criteria and their codes can be viewed with the command,


A compact presentation of the stability evaluation is available for those criteria addressed by the STABILITY command. In most cases this is a one-page "stability sheet" presenting a loading graphic, righting-arm curve, and other pertinent information. The command,


turns on the stability sheet mode.


reverts to the normal GHS report format.

See the 14.50 manual update for complete documentation on these new features. Note: The STABILITY command is part of the AF (Advanced Features) module, and in addition the CG (Condition Graphics) module is required for the stability sheet feature.

New Touch Screen Support for Windows Tablets

TEMPLATE dialog boxes zoom in or out when pressing the Ctrl key with "+" or "-", when using a mouse wheel with the Ctrl key held down, or when moving fingers apart or together on a touch screen.

TEMPLATE dialog boxes now remember the last-used zoom factor when reopening each template dialog that was previously zoomed in or out (either by pressing the Ctrl key with "+" or "-", using a mouse wheel with the Ctrl key held down, or moving fingers apart or together on a touch screen).

TEMPLATE dialogs that overflow the screen are resized to fit with scroll bar controls added as necessary. Keyboard shortcuts for vertical scrolling are Ctrl-Up and Ctrl-Down for lines, PgUp and PgDn for pages, and Ctrl-PgUp and Ctrl-PgDn for top and bottom. Keyboard shortcuts for horizontal scrolling are Ctrl-Left and Ctrl-Right for lines, Alt-Left and Alt-Right for pages, and Ctrl-Home and Ctrl-End for leftmost and rightmost.

New Data /ACCESS Features

ADD "description" wvar[,lvar[,tvar[,vvar]]] /ACcess assigns the described item's weight and coordinates to the named variables. An asterisk can be used as a placeholder for any variable name that isn't needed.

ADD "description" /LEN:fvar,avar /ACcess assigns the described item's forwardmost location to fvar and aftmost location to avar.

CRTPT (n) dvar[,lvar[,tvar[,vvar]]] /ACcess assigns the nth critical point's description and longitudinal, transverse, and vertical coordinates to the named variables.

GROUND "description" [bvar[,lvar[,tvar[,vvar]]]] [/PEN:pvar[,mvar]] /ACcess assigns the described ground point's buoyant force, coordinates, penetration, and maximum penetration (negative if downward) to the named variables.

HEIGHT (n) varname /ACcess assigns the current height of the nth critical point to the named variable.

SPECIAL SYSDEC places command overrides the default number of decimal places stored for values accessed using the /ACCESS parameter.

New Maximum VCG (MAXVCG) Features

MAXVCG runs about 40% faster than earlier versions, varying depending on LIMITs.

MAXVCG provides additional details when "LIMIT not verifiable" errors occur.

SOLVE MAXVCG and MAXWEIGHT /REPort optional parameter was added to report intermediate RA tables and plots for diagnostic purposes.

MAXVCG /LINEAR[:OFF] optional parameter was added to interpolate maximum VCG data linearly (or default parabolic interpolation if the OFF subparameter is present). This setting is stored with the maximum VCG data unless used with /LOOKUP or the current condition is being displayed, in which case the /LINEAR parameter is effective only for the present lookup. Thus /LINEAR can be used with MAXVCG VALID to change the interpolation method for the current maximum VCG data.

MAXVCG /TRIM or /LCG lists may now appear in any order. Note that if more than one trim value is specified, the first value is used to calculate the displacement at each draft, and that set of displacements is used for all trims.

MAXVCG /TRIM:trim /LOOKUP precision was improved for non-zero trim, so lookups now exactly match inputs from /EXTERNAL data files.

MAXVCG improved plot scaling for cases of very small ranges of VCG values.

MAXVCG and SOLVE MAXVCG now run to normal completion instead of truncating internal righting arm tables whenever trim magnitudes exceeding 45 degrees are encountered. After completion, this situation is still trapped as the error "Trim limit (-45 to 45) exceeded" with ERROR system variable set to -902 if the trim was below -45 degrees or -903 if above 45 degrees. The lowest VCG where trim limit was exceeded is also reported, along with LCG and displacement weight (for the MAXVCG command only). A run file can ignore excessive trim by setting the ERROR system variable to -3 or -4 before doing MAXVCG or SOLVE MAXVCG, afterwards resetting ERROR if its value changed to -902 or -903.

New Righting Arm (RA) Features

RA /LIM and MAXVCG improved precision of maximum righting arm locations, especially for wider ANGLES list increments.

RA tabulation provides a full 360 degree range relative to the starting heel angle, no longer triggering plot errors beyond absolute 360° heel.

RA /STOP:FL[num] subparameter (and synonym /STOP:CR[num]) was added to stop only after the specified downflooding Critical Point number is reached (instead of the lowest Point).

RA /STOP:MAX [/HOLD] now stops reporting at the first maximum righting arm angle, instead of sometimes ending with the next given angle in cases where no intermediate maximum righting arm angle was inserted between given angles.

RA /LIM now traps "No heeling moment present" if ABSOLUTE RATIO or RAR limits are defined with HMMT OFF.

New Wind Heeling Moment (HMMT) Features

HMMT WIND /BAND now uses any surface model representations for transformed sail parts (modified by TYPE /MOVE, /SWING, etc. parameters) as created by the PM SURFACE command, replacing the regular geometry station-based models for lateral plane area calculations, unless the /NOSURFace parameter is present, or for all parts with surfaces if /SURFace parameter is present.

HMMT /NOSHield:pattern parameter was added to exclude parts matching pattern (which may include * and ? wildcards) or list of part names, from wind shielding between parts when used with the /BAND and /COMBINE parameters.

New Advanced Features (AF) and Oil Outflow Enhancements

OUTFLOW corrected interpretation of regulation 12A. to calculate Yb as the minimum transverse distance from each tank point at or below waterline dB to the side shell at dB only instead of at the tank point height.

OUTFLOW improved precision of load line breadth Bs and waterline breadth Bb calculations when no hull points are near the load line or waterline.

OUTFLOW improved calculations for half-split shapes.

OUTFLOW improved calculations by correctly increasing distance of tanks to shell plating at locations shielded by hull appendage components such as keels, skegs, fins, etc. Note all listed oil tanks must be contained within the first component of the hull part.

OUTFLOW /LOG includes additional details for regulation 12A.11.5-7, such as values Hw, Yb, Xa, Xf, Zl, Zn, y, Yp, Ys, and z.

OUTFLOW /LOG includes load line depth and light ship draft in the header, shows both port and starboard minimum distance y values for non-centerline tanks, and improves spacing.

New Condition Graphics (CG) Features

DISPLAY STATUS profile view without OUTBOARD subparameter suppresses the far side deck edge line so it no longers appears on top of the part, and no longer obstructs visibility by drawing deducting displacer components opaquely.

DISPLAY STATUS profile and plan views were improved by considering the inclination when ordering displacer parts and components from back to front.

DISPLAY STATUS and SE were improved to omit vertical cut lines when displaying doughnut shapes.

DISPLAY STATUS /NOEXTRA parameter was added to omit extra 3D edge lines, instead just showing deck edges actually marked in the vessel geometry.

DISPLAY STATUS view :WITHSAILs[:pattern] optional subparameter was added to show only sails matching the specified pattern, which may include wildcard * and ? characters. Each BODY @ slice can be followed by its own WITHSAILS:pattern, which also applies for subsequent @ slices until the next WITHSAILS appearance.

New CRANE Module Features

CRANE module now delivers realistic wind heeling moment using HMMT WIND /BAND for crane sail parts having surface model representations when transformed using TYPE /MOVE, /SWING, etc.      CRANE module added support for horizontal extension due to sheave radius stored in optional BOOMSHV variable.

New Hull Maker (HM) Features

ENTER BARGE runs the Windows version of the barge generator program for compatibility with 64-bit operating systems.

New Load Editor (LE & LEw) Features

Load Editor supports rapid toggling of tanks between intact and flooded by entering the F11 hotkey when the cursor is in the Load or Load% column (as shown in the LEw right-click menu). Loading hotkeys F1-F11 are disabled for protected tanks, which no longer show them in right-click and key menus.

Load Editor shows blue color for tank loads having online protection, distinguishing them from bright green color used for full protection.

LOAD EDIT /QUIT was added to close Load Editor from a button macro. Note other forms of the LOAD EDIT command restart Load Editor with new parameter settings when used in a button macro.

Load Editor shows pressure for BUBBLE tanks in Load Details by right-clicking the LEw Load column.

LOAD EDIT /SCOLumn:Refht subparameter was added to display Reference Point heights initially in the rightmost tank column. This "RefHt" column mode can also be toggled by keying Ctrl-E in Load Editor or right-clicking the rightmost LEw tank column header.

Load Editor in Ground Points mode shows the Ground Center of Reaction (GCR) coordinates in the spreadsheet footer.

Load Editor footer shows total weights for current ADD PREFIX category.

Load Editor shows a colored asterisk "*" in the Tank Description field of any tanks with blank description that have a color set by the CHANGE /COLOR:n command.

LOAD EDIT /CG now synchronizes any Load Editor macro changes with Condition Graphics whenever waiting for user input.

LOAD EDIT BUTton [:template] can be done within a LEw macro to reconstruct toolbar button columns from the specified template (or remove if none).

LOAD EDIT [/]BUTTON:template font size can be set using the TEMPLATE /SIZE parameter.

LOAD EDIT [/]BUTTON:template lines support the /Grey parameter to disable and grey-out a button.

Load Editor for windows improved recovery from errors occuring after a macro cleared the current geometry file.

New Longitudinal Strength (LS) Features

LSLIM MMT [:Midrange] optional parameter was added to calculate limit percentages based on the midrange between the minimum and maximum bending limits at each longitudinal location, rather than the range from zero to the negative minimum or positive maximum limits. Midrange behavior is now the default when the minimum and maximum limits have the same sign at any point on the limit curves. For example, if the bending moment is 2800 at a location where the limits are 1000 and 3000, then the moment/midrange percentage is 100*(2800-2000)/(3000-2000) = 80.0%.

LS /LIM plots show the midrange curve between the minimum and maximum bending limits when LSLIM MMT:MIDRANGE was specified or the default behavior due to minimum and maximum limits having the same sign at any point.

LS and TORQUE /NOSOLVE optional parameter was added to use the current waterplane for computations without solving, regardless of any buoyancy discrepancies.      LS /NOSOLVE shows "using current waterplane" in summary and plot titles, also warning "Vessel out of equilibrium" in the report in case of excessive weight delta or trimming arm.

LSLIMIT improved error reporting by showing minimum allowed values when the specified limits are too small.

LSLIMIT, SMOD, THRUST, PULL, and HMMT commands now work correctly even when the internal command line length exceeds 10,000 characters due to very long item lists.

New Model Converter (MC) Features

Model Converter supports import of the latest HEC file format having .SH2 extension, which contains Station data in separate Volume spaces.

New Part Maker (PM) Features

ENTER PM command FILL (list) maxgap[,lmin[,lmax]] was added to fill additional stations as needed for listed parts and/or components so the specified maximum gap between stations is not exceeded, optionally just within the longitudinal range between lmin and lmax.

ENTER PM statement CAMBER supports negative camber values, which are applied from the centerline down rather than from the deck edge up, trimming the station curve in order to irreversably lower the deck edge (unlike non-negative CAMBER which replaces any pre-existing camber). Negative CAMBER thereby provides a way to cut the hull down by following with a second CAMBER statement to remove the camber, leaving the deck edge lower.

ENTER PM allows a component to be specified by its sequential number n within its part, using the form "partname\#n". This form can be used for the MODIFY command, but CREATE traps "Illegal component name" for numbered components.

ENTER PM added the ERROR IGNORE command to ignore the next error, except that the read-only system variable ERROR is set to "IGNORED". This ERROR variable is reset to the empty string after being accessed.

ENTER PM command COMPONENTS added an optional CHECK parameter to suppress report output (simply setting ERROR to "IGNORED" if ERROR IGNORE is in effect).

ENTER PM command SURFACE now creates patches covering surface areas of the forward and aft end stations to ensure correct heeling moment of rotated surface models near 90° swing.

ENTER PM reports will write maximum lines according to REPORT /L:line even if that exceeds the default printer page size.

ENTER PM command PERM now supports permeability factors up to 1.05.

ENTER PM improved interpolation for station filling.

ENTER PM command DISPLAY error handling was improved.

New Section Editor (SE) Features

SE and DISPLAY show the sequential component number after the "Component" tag for parts with multiple components.

SE Delete now supports deleting the currently-selected part or component (including names containing lowercase characters) following "OK to delete" confirmation.

SE now consistently shows 3 decimal places for metric unit coordinates.

SE command Fill and Station@ loc Fill interpolation was improved.

New Sensor Interface (SI) and Tank Gauging Communication Features

CUSTOM (GHSERIAL) START added support for a serial broadcast protocol from Musasino Co., Ltd.

CUSTOM (GHSERIAL) now maintains separate READ and WRITE data lists, so WRITE will only affect data sent to the communication partner, not anything returned by CUSTOM READ. Any new data received at a list index still overwrites any values previously set by WRITE for future sending.

TYPE /PROTECT:ONLINE optional subparameter was added to prevent tank loads from being changed only via the Load Editor user interface, with LOAD commands still allowed outside Load Editor or inside macros or online from Sensor Interface.

TYPE /PROTECT:OFFLINE optional subparameter was added to allow intact tank loads to be toggled between "Offline" and "Online" protection in the LEw right-click menu when the ONLINE system variable is non-zero. Offline tanks preserve their status when restored to intact after being flooded, damaged, or protected in Load Editor, but otherwise behave the same as regular unprotected tanks. Note new system variable TPROTECT returns protection status information for the current tank.

New PRINT and REPORT Features

PRINT and PRINT /PREVIEW were made significantly faster for long reports with many plots and fancy boxed reports with many graphics (such as DISPLAY PRINT).

PRINT PREVIEW now warns when the current page overflows beyond the paper size, offering to retry previewing using larger paper sizes to avoid truncation; this typically could happen to report files created for A4 paper size when previewed on systems configured for smaller Letter paper size.

MESSAGE REPSTART /BOX surrounds the custom report with a box when in fancy REPORT /BOX:COLOR|BW mode. MESSAGE REPAPPEND can be used to prematurely turn off custom formatting, treating future lines as appended information.

MESSAGE followed by REPTITLE, REPPARAM, REPHEADTOP, REPHEADER, REPNORMAL, REPSUMMARY, REPFOOTER, or REPAPPEND can be used to force the next line to use the corresponding custom report formatting style.

MESSAGE REPNORMAL and MESSAGE REPAPPEND formats support styled text markers {+b}, {4}, or {12} for red-colored bold, {+i} for gold-colored italic, and {+u} for underline.

NOTE command supports writing the special variable form {%IMAGE("file:")%} to embed an image from a BMP or JPG file into the output file itself, for portable distribution without needing to include the original image file. This places encoded image characters in the output file following "file:", inserting the character count after the colon.

REPORT /BOX:COLOR|BW fancy ROLL REPORT was improved to use proportional font and boldface title.

New Dialog Box (TEMPLATE) Features

TEMPLATE and MACRO names are no longer limited to 8 characters long.

TEMPLATE text, image, button, and input fields support /RRight and /RCenter parameters to justify a row's remaining fields all the way right or centered, shifting over any unused columns to the right edge of the dialog box. Only the first field in the range to shift should be marked with /RR or /RC; however, /RC can precede /RR to center a field range (from /RC up to the one before /RR) in the space available after shifting right the fields starting with /RR. Care is needed when formatting /RR or /RC around multi-row image or box fields.

TEMPLATE field EXIT supports the /START parameter after its "cancel" label to give the "Cancel" button startup input focus (instead of the "OK" button which is the normal EXIT field startup focus).

TEMPLATE execute fields with /Persist:Refresh parameter no longer redisplay a dialog box at its original default location even when the user had moved it to a different screen location.

TEMPLATE box field labels no longer affect field alignment and sizes, unless the box's final field column needs to be increased for the box label to fit. This also allows box labels to span multiple field columns.

TEMPLATE variable edit input fields with the EXIT or /Apply:macro parameter now only exit or execute the macro when input focus leaves the variable field or when the Enter key is pressed, not on every keystroke into the field.

TEMPLATE and INPUT into range-checked real variables no longer accept solitary suffix characters (such as "f" or "%") absent any value.

New System Variables and Other VARIABLE features

LRP, TRP, and VRP system variables were added to return the longitudinal, transverse, and vertical Reference Point coordinates of the selected part.

PDISPL system variable was added to return the total displacement weight for the current part selection, or undefined if no parts having displacement effects are selected. Note that tanks open to the sea have negative displacement.

TPROTECT system variable was added to return protection information for the currently selected tank, either 0 for none, 1 for full protection, 2 for online protection from user interface chances when Load Editor is active, or -1 if the currently select tank has offline protection and Load Editor is active.

TTRIM and THEEL system variables were added to return the surface trim and heel angles in degrees for the currently selected tank (which match the vessel TRIM and HEEL except for FROZEN tanks).

WTPERIMM and MMTTOTRIM system variable were added to return the weight per immersion increment (inch or cm.) and moment per trim increment (degree, inch or cm.), matching the values shown by the GHS command.

VARIABLE (MMt) declares a unit-smart moment type, same as VARIABLE (MOment).

VARIABLE (PRessure) type was added for automatic conversion to the current unit setting for weight divided by length squared.

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

ADD /USER parameter was added to create a user item that allows subsequent replacement by ADD /USER or deletion by DELETE /USER without trapping an error; note that regular replacement or deletion without the /USER parameter continues to work for all items.

AXIS is no longer displayed with "a" or "f" suffix, instead simply as a signed value with positive indicating clockwise rotation of the heel/trim axes as seen from above, and negative indicating counterclockwise rotation. STATUS reports now show axis with CW or CCW suffix instead of Aft or Fwd.


CONTENTS * now preserves weight (not load) when restoring specific gravity, so it can be used as a matched pair after CONTENTS *,spgr which likewise preserves weight when changing specific gravity.

CONTENTS name no longer acts as an abbreviation for an existing contents description in cases where the abbreviation could ambiguously match multiple existing contents descriptions, instead creating a new contents description for the specified name.

DISK file.DAT /HOLDreport parameter was added to hold any current report file so it will be reopened at its original state when the specified output file is stopped by DISK OFF or other means (except CLEAR PROJECT and SCREEN). Note if a report is currently being held, it is preserved by a new DISK /HOLD command (the same as if it were first restored by DISK OFF).

GHS command used with a draft or displacement list or the /KM parameter now reports "Fixed VCG" to better distinguish from current-waterplane-and-GM mode.

GROUND command now warns if the specified reaction force was ignored because of conflict with the /PEN penetration values (as when negative penetration indicates no contact with the ground); this warning can be suppressed by including the /NOWARN parameter.

HEEL *-ROLL now traps an error if no ROLL angle had been defined.

LOAD FLOWC magnitude needed to be corrected by a factor of the square root of the source specific gravity, together with load conversions to conserve mass for flow between tanks with different specific gravities.

LOAD [WE: | VO:] *+n and *-n are now supported to add or subtract a weight, volume, or fractional value n relative to current tank loads.

LOAD command no longer traps "Value out of range" when assigning pressures values less than 0 or greater than 1 to TYPE BUBBLE tanks.

READ removed limitations on maximum property tables for shapes.

SCREEN MIN FOCUS was added to pass foreground focus either to a program session connected using MESSAGE SEND ON or (if none) to the previous window to have foreground focus. Passing focus prior to MESSAGE SEND SC MIN RESTORE will reliably transfer active keyboard focus to a connected program session without risking taskbar notification flashing on certain operating systems.

SOLVE precision was greatly improved and spurious capsizing was prevented for some difficult cases.

SOLVE now reaches a good solution faster by avoiding spurious capsizing that was occuring during intermediate solving in certain cases.

WRITE (Tanks) /NAME:pattern optional parameter was added to write only tanks with names matching the pattern, which may include wildcard characters.

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

COMP part\component /WETTED was occasionally reporting spuriously large Wetted Surface values for components marked with deck edges.

CONTENTS creation was sometimes trapping "invalid location" run-time error after emptying the contents table using CONTENTS OFF,0 (since 7.80 only).

CRANE module was thrashing Load Editor with continual solving in rare cases.

DISK file.DAT was failing to receive only nondisplay output when started with a REPORT file already open (since 13.62C only).

DISPLAY PRINT after PAGE 0 was showing page numbers.

DISPLAY STATUS /SYNC was sometimes suppressing the most recent update notification when redundantly done with identical Condition Graphics synchronization already active.

DISPLAY STATUS PLANE:BE was suppressing ground point circle marks that would have intersected the forward border edge in reports.

DISPLAY STATUS profile and plan views were not automatically constructing deck edges for HULL\HULL.C nor edge lines for improved 3D visibility of displacer and sail components (since 13.88C only).

DISPLAY STATUS was not showing the correct levels for BUBBLE tanks.

DISPLAY STATUS was sometimes trapping an "invalid location" run-time error when arc radius points were present in the geometry.

DISPLAY STATUS was occasionally showing spurious interpolation artifacts in cut views between discontinuous stations even when defined using the minimum station separation (0.001' or 1 mm) available in Section Editor.

DISPLAY STATUS was hanging or trapping "Too many items" when over 300 parts were being displayed.

DISPLAY STATUS BODY lists were not always correctly reconciling the scale of the first view in the list with subsequent views.

DISPLAY STATUS PROFILE view was sometimes drawing load color above the waterline in rare cases involving tank bottoms with multiple humps.

DISPLAY STATUS PLAN view was not showing full tank waterplane breadth. at high trims.

DISPLAY STATUS body views were sometimes incorrectly coloring above or below the internal waterline for frozen tanks.

ECHO OFF command was being echoed if followed by a comment (since 13.52 only).

END was incorrectly functioning the same as QUIT when a main program [/R:]runspec parameter specified a command line instead of a Run File (which still correctly quits after reaching its END).

ENTER BARGE /WAIT parameter was ineffective under 64-bit operating systems.

ENTER PM command DISPLAY was not restoring the title row and other window contents after quitting from displaying the geometry.

ENTER PM reports COMPONENTS, PARTS, and SHAPES were generating a duplicate header on the first page if it was initially empty.

ENTER PM statement FIT was occasionally adding an unnecessary station beyond the ends of the component at hand.

ENTER PM command DISPLAY PRINT /FILE no longer displays vessel graphics.

ENTER PM statement CLASS SAIL was showing as SUPERSTR in DISPLAY.

FIXUP /TANKORDER:OrderFile was trapping an "invalid location" run-time error when moving the first tank to a different position.

FSMMT MAX was sometimes finding an incorrectly inflated maximum FSM value if any load created a tiny waterline breadth near a large gap between stations.

HMMT hm1@ang1,...,hmN@angN functions were not correcting flooring negative heeling moments to zero for heels outside the specified angle range.

LOAD EDIT /LS, /STABMACRO, and /WARNMACRO automatic background behavior was not being restored after unsinking a vessel by retrieving a saved condition or reducing loads then zeroing heel.

LOAD EDIT /CRTPT:n no longer risks trapping "No such critical point" when calling a macro that deletes the specified critical point.

LOAD EDIT and LOAD STATUS were not showing the correct load values for type BUBBLE tanks, which are now protected from user entry.

Load Editor was trapping an "invalid location" run-time error in rare cases where a new Geometry File was being read while Load Editor was active.

Load Editor Weights Spreadsheet in Automatic Solving mode was not always refreshing the weight column to reflect changes to the Load% column (and vice versa) until the current field cursor was moved.

Load Editor was thrashing with continual automatic solving in rare cases.

Load Editor was sometimes trapping an "invalid location" run-time error when right-clicking in the Weights spreadsheet (since 13.68C only).

Load Editor was sometimes trapping an "invalid location" run-time error when switching into Weights spreadsheet mode (since 13.68C only).

Load Editor footer was not showing the correct total load for contents that include TYPE BUBBLE and TYPE SPILLING tanks.

Load Editor spreadsheet could overflow when showing added tanks after executing a macro that does READ /APPEND.

Load Editor startup no longer traps "Not enough weight" if the user cancelled the "Set Light Ship" dialog by pressing Esc or clicking title bar Close button.

LS and TORQUE were sometimes spuriously omitting table rows (since 13.18A only).

LS was trapping PSI ERROR discrepancies on rare occasions when distributed weights were repeatedly added and replaced.

LS /FRA was ignoring frame locations separated by Tab characters.

LS was sometimes trapping "DISCREPANCY" errors if degenerate distributed weights with zero length were present (since 11.34D only).

LS was sometimes trapping a spurious PSI ERROR discrepancy after writing a save file with groups present (since 10.92F only).

LS was sometimes trapping spurious errors when sail surface models were defined using TYPE /TOP parameter.

LSLIM was sometimes truncating limit values when separated by a large number of spaces or Tab characters (since 13.08D only).

Main program window titlebar information was being truncated in rare cases.

MAXVCG was sometimes producing slightly different results depending on the order of any GM UPRIGHT limit.

MAXVCG /FIXDIR and /BOTHDIR were not working consistently with ROLL and reversals of ANGLE list direction.

MAXVCG was trapping an "invalid index" run-time error in rare cases.

MC file.DXF imports were sometimes omitting points.

MC /PROFILE was trapping an "invalid location" run-time error when reapplied to a shape already rotated from body to profile view.

Menu Wizard->All... dialog was sometimes failing to run the Crane wizard.

Menu File->Change directory dialogs (and similar TEMPLATE field DIR dialogs) were not always operating properly when selecting network paths in UNC format (i.e. \\server\drive\directory). In any case, the current directory can only be changed to an UNC format path that has mapped its network drive to a letter.

MESSAGE . was not displaying a period, whereas NOTE without parameters was outputting a period.

MESSAGE SEND and SOLVE SEND command lines longer than 75 characters were incorrectly displaying just the end of the command when ECHO is disabled (since 13.64A only).

MESSAGE SEND ON SYNC was not always automatically restoring a connected session if it had been separately minimized.

MESSAGE SEND OFF from the first communicating session no longer requires doing MESSAGE SEND OFF on each previously connected session before communication can be resumed using MESSAGE SEND ON.

MESSAGE SEND ECHO OFF is no longer echoed by the recipient program.

NOTE color number {-1} was not restoring the original color (since 10.62E only).

NOTE was not omitting print commands like {%IMAGE("file")%} from screen output.

PRINT was trapping an "invalid location" run-time error in rare cases involving fancy reports with excessive lines per page.

PRINT /PREVIEW /SPAWN followed immediately by another PRINT command was sometimes failing.

PRINT command was trapping "Port not found" for numbered files like 1.PF.

PRINT and REPORT now trap "Inaccessible file" instead of hanging for device names like LPT1 and PRN.

RA and other commands were sometimes failing to suppress non-fatal error messages (i.e. those that set the ERROR system variable to negative values) from report output when in ERROR=-3 (silent) or -4 (inactive) mode.

RA was sometimes ignoring downflooding when it occurred immediately after a heel angle having a different sign than the direction heel was changing (since 9.26 only).

RA plot was sometimes showing GM lines not tangent to the curve at equilibrium in cases of earlier vanishing righting arm (since 13.64A only).

RA /LIM using MAX0 limit angle was not always extending the ANGLES list if necessary to ensure that the maximum absolute right arm was attained.

RA /LIM was not always extending the angle range as needed to resolve the MAX angle for RISE and ABS RA limits, leading to spurious UNDEF limit results.

RA plots were omitting the precise locations of maximum righting arm and zero flood height in rare cases where they were extremely close to other plotted points.

RA reports with AXIS were not always showing the same heeling moment direction tag as HMMT REPORT.

READ /CHECK was sometimes incorrectly finding negative waterplane areas for sail parts.

REPORT was unnecessarily trapping "Bad file name or path" for file specifications containing "+", "[", or "]" characters.

REPORT /BOX:COLOR|BW fancy CRTPT REPORTs were sometimes trapping "not enough cells on line" when /TANK or /INSIDE tanks are present.

REPORT /BOX:COLOR|BW fancy GHS REPORTs were sometimes trapping "not enough cells on line" when reporting a very large negative VCB.

REPORT /BOX:COLOR:BW fancy RA /LIM:ATT reports were sometimes misformatting limit tables containing two-digit limit numbers and large negative attained values.

RUN without the /CALL parameter was unreliable executing inside a LEw macro.

RUN was ignoring the last command in the run file if it ended with a comma or semicolon.

SAVE and WRITE (SAVE) commands were incorrectly writing FIX HEEL to the Save File when executed from Load Editor macros with Auto Solving mode turned off.

SCREEN MIN RESTORE no longer normalizes a maximized window, instead just bringing it to the foreground with active keyboard focus.

SE title bar "X" button was ineffective for prompting to close Section Editor when command entry was in process after making unsaved changes.

SE zooming using F10 was sometimes causing hanging or crashing in profile/plan view (since 13.86 only).

SE was sometimes trapping an "invalid location" run-time error after reporting a command input error (since 13.92 only).

SE Name part\component RENAME was sometimes failing to change the current item when duplicate or lowercase names were present in the geometry.

SE Name part\TUBE was not updating the header Part & Component names and was asking spurious "Want to create" message even if the tube already existed.

SE Delete part\component failure no longer prompts spurious "Want to create" question or follows confirmation by creating then deleting the same item.

SE Delete part\component was hanging on valid part name but missing component name if user does not "Want to create" when prompted (since 13.76 only).

SE was occasionally displaying its header incorrectly upon startup.

SE was trapping an error when Ctrl-U undid before a new station was added.

SE was sometimes trapping an "invalid location" run-time error when writing empty geometries or when undoing and redoing geometries containing comment lines.

SE zooming using F10 was sometimes causing hanging or crashing in profile/plan view.

SE command Write was not updating the window title.

SE command Station@ no longer gets stuck in insert mode after creating an empty station but before creating any points, now aborting station creation when Esc or a function key is pressed instead of permanently maintaining insert mode for other stations, components, or parts. Likewise sounding tube creation using the Name command no longer gets stuck in insert mode if Esc or a function key is pressed before creating any tube points.

SET X=ITEM "A B" sets the variable to "Undefined" instead of trapping an "expression out of bounds" run-time error.

SET numeric operations no longer return "Undefined" for quoted operands.

SOLVE was sometimes trapping DELTA FAULT 2 or 1 when a jacked-up vessel was lifted out of the water using GROUND points with tiny maximum penetration.

SOLVE was sometimes trapping spurious "No equilibrium found" errors when tanks with TYPE FLOODED PLUS were present.

SOLVE was sometimes neglecting to pursue a precise solution following a TCG change until the next SOLVE (since 10.34D only).

SOLVE was trapping "Too many waterplane endings" in rare cases.

STATUS was not always showing the correct "Residual Righting Arms" and "External Arms" values when heeling or trimming moments were present with non-zero AXIS angle; note that absolute "Righting Arms" values were always being shown correctly (since 13.70H only).

STATUS GRound and STATUS LPlane were not including titles.

TC no longer forces an initial page break when the load list ends with an ellipsis "..."

TEMPLATE radio fields now correctly receive startup input focus when marked with /START or defined as the first field in a template, with the appropriate radio button selected to match the field variable's initial value.

TEMPLATE processing was sometimes incorrectly replacing nested variables such as "{ {VARNAME} }" for names containing underscore ("_") characters.

TEMPLATE dialog box zooming revealed text truncation for certain font point sizes, which has now been generally improved so excessive space is no longer needed when the display DPI setting is increased to make text easier to read (since 13.16 only).

TEMPLATE /REFRESH was trapping errors in rare cases.

TEMPLATE button fields were not covering the entire button with any /B color when justified using /L or /R parameters.

TORQUE plots were sometimes overflowing when symmetric LSLIMIT TOR limits were specified as negative numbers.

TYPE CALIBRATED /NATIVE was not storing the present tank type as the "native" intact type.

TYPE RESTORE and Load Editor tank repair after flooding or damage were not correctly restoring CALIBRATED tank type.

TYPE RESTORE was not correctly restoring tank types other than INTACT from flooding or damage that occurred prior to writing and resuming from a Save File.

TYPE RESTORE (and setting flooded tanks Intact in Load Editor) was not restoring the fixed surface heel and trim angles for previously FROZEN tanks.

TYPE SET /SWING, /TOP, etc. sail parameters were not working correctly with Condition Graphics for sail reference points defined using the REFPT command instead of in the geometry file.

TYPE SET /TILT:angle parameter was ineffective (since 13.90D only).

VARIABLE types WEight and MOment were losing precision when current weight UNITS were small (i.e. LB or KG).

WRITE (LOADS) and WRITE (TANKS) now write the LOAD command after the TYPE commands for TYPE BUBBLE tanks to avoid risking errors when running the file.

WRITE (MAXVCG) and SAVE were sometimes trapping an "invalid location" run-time error when "LIMIT not verifiable" warnings occurred during use of the MAXVCG /ID parameter (since 12.52 only).

Previous Version Update Features

Copyright (C) 2014 Creative Systems, Inc.