v5.39.1 (Feb 2006) * change DATE_print formatting * added uspln-t and uspln-b formats for direct USPLN feed * added lev2z input format for Level 2 radar data. This specifies a bzip2 compressed file * removed test for AR2 header for determination of compressed Level 2 data. * changed setting of file type and filename convention in rad to fix a conflict when both are specified. * fixed bug in licensing v5.39.2 (Mar 2006) * added marker plotting to light along with enabling -sc for scaling. * fixed bug in sacvt that caused core dumps on Solaris * added parsing of new GRIB header file format v5.40 (Jun 2006) * fixed shefcvt comment parsing * fixed rawfile read issue associated with uacalplt. Not reading in leading whitespace ahead of ID in raw file. * fixed bug in DATE_chk_range that led to bad checks for times in sacvt and uacvt. * fixed bug in sacvt that could miss some reports if METAR or SPECI not put in METAR code line. * added GeoTIFF GOES image capabilities. Main update was handling both big and little endian TIFF formats. * added GRIB2 support for JMA radar images * reworked bit read code for NIDS data so that extended storm attributes table would be displayed. * added check for TVS and MESO designator in storm attributes table. * markers now have drop shadowing. * added strong and num filtering to storm attribute plotting. strong plots only storms with TVS, MESO or severe hail > 50%. numplt plots only first # storms. * fixed bug in raw_read that wouldn't plot raw data with whitespace in front of id. * fixed bug in rcm plotting of storm tops. * added code to handle RLE compression in TIFF files. * added refresh to surface plotting (sfcwx). * fixed bug in storm track arrow (-va=track). * fixed GRIB2 decoder. It was skipping GRIB products due to an error in the offset counter. In some cases, it was skipping every other grid. * fixed GRIB2 decoding of level specification. This meant layer definitions were wrong. v5.41 (Sep 2006) * added read capability for WXP6 grid and image files. WXP 5 can read them but not create them. * added ability to plot markers, text and range circles in mapplt. mapplt mark:lat:lon:type text:lat:lon:text range:lat:lon:range * put in default search for resource file. It will search in /home/wxp/etc and /usr/local/wxp/etc if wxpdefault not set. * added comment lines to color fill and enhancement files. Precede them with a #. Also added @value line for WXP v6 valued images. * added "/c/" for Windows filenames. You can use "/c/" instead of "c:/" in filename to eliminate some confusion with ":" being a delimiter for WXP options. * added the parsing of some new JTWC tropical storm advisories to the hurricane program. * Added storm track plotting to raw files. For example: 216,36:track:co=white:wi=2 Will plot a track marker with direction 216 and speed 36 knots. * added labels for special GOES products on NOAAPORT. The satellite derived lifted index, precipitable water, surface temperature and cloud top height will now be properly labeled. * fixed a bug in the conventions that could code dump if lines in the name convention file were longer than 100 characters. The line limit is now 160 characters. * fixed a bug in grdmath that prevented the prepending of the grid_path path onto the first filename used in some math computations. * fixed an issue with the determination of hurricane location. The hurricane program now has some additional checks to make sure eastern Pacific storms don't make it into the western Pacific list of storms. * fixed a bug in the MDR decoder that didn't account for a storm movement attribute after max tops. v5.42 (Jan 2007) * added hex color definitions to color table file. Instead of using floating point RGB values (3 separated by spaces), you can use #rrggbb in hex format (#c08427). * fixed problem with wrapping contours in Lambert Conformal projection. On global grids, lines going across back of earth could cause spurious horizontal lines to display. * added new gridpoint plotting capabilities. First, you can specify a skip factor so that not every grid value is plotted. Second, you can offset the plotted values. Third, you can scale the values. In plot_param: plt_skip=x:y (with y optional) plt_off=x:y In variable: sk=xy:xy=xy:sc=# (mimic vector plotting) * added in better support for GRIB2. This includes support for multiple grid products. * fixed bug that would cause core dump on Jpeg2000 grids. * added support for some types of LRIT data. xsat -inp=lrit ... This is limited to uncompressed GOES formatted images such as those from JMA. * added support for satellite projections based on angle, not projection plane. Satellite projection information is: sat:plat:plon:sat_rad:flag,clat,clon,... where the flag is 0 for projection plane space and 1 for angle space. Angle space is scaled by the sat_rad to make numbers reasonable. * added support for Unisys 1 km winter mosaic. * added marker plotting in light. light -pp=mark:circle * added IR temperature computation to Unisys satellite images so that they can be enhanced with a temperature based enhancement scheme. * fixed bug in reading in upper air data which limited the number of significant levels to 50. This meant some soundings didn't get read in from WXP converted files. Increased the maximum number of levels from 120 to 200. v5.42.1 (Feb 2007) * fixed bug in color_fill file reading that caused last line to be read twice. * fixed bug in suncalc that didn't computer Julian data correctly for non-leap years. The sunrise/set times were off by a day or two in January and February. v5.43 (Apr 2007) * fixed bug in color_fill file that caused DOS formatted files to read in incorrectly. * modified reading in of NGM MOS POP12 data to handle Alaska off hour reports. * fixed bugs in GRIB2 decoder to handle embedded GRIB products. In some cases, the wrong grid was read in. * added satellite projection code for non-spherical earth. * fixed domain specification so that "e" can be specified for non-sphere/ elliptical earth proj:e:plat:plon:... * comments can be added to wxp.reg file. * added support for RECT, MERC, LAMB and MSAT AREA file navigation. Fixed support for MOLL projection. * reworked georeferencing for GVAR AREA navigation to use native WXP georeferencing rather than GVAR code. This eliminates some estimation of pixel spacing done in prior versions. Going to non-sphere and satellite navigation based on angle (see 5.42) made this possible. * corrected the line/elem for AREA files to use 0,0 as origin. * added many new levels to GRIB specification such as boundary layer, cloud ceiling, wet bulb zero, equilibrium level, super cooled liquid water. v5.44 (May 2007) * reworked GRIB1 and GRIB2 decoder to streamline reading of data. The problems involved losing track of the current position in the file and in some cases core dumping. * added in support for GRIB2 data templates that support ensemble data. Templates include 1, 2, 5, 9, 11 and 12. * added differentiation for ensemble mean and stdev fields. Use ensmean[]var for mean and ensdev[]var for stdev fields. The variable number is 19000vvv for mean and 19001vvv for stdev fields. * changed ensemble member specification. Control is 19300vvv. Positive is 1932##vvv. Negative is 194##vvv (used to be 193). * added support for thinned grids in GRIB2. * fixed bug in grbsnd where some grids could be inadvertantly read in. This is case when 25 mb level data is available and the program wants 50 mb levels. The 25 were read in anyway and sometimes overwrote the 50 mb data. * fixed bug in GRIB reader that if a file contained two sizes of grids, that the data grid would be reallocated. Otherwise, there was a core dump. * added support for hybrid levels (lev = 105) for radar model output. * reworked satellite transformation to fix mapping problem on non-sphere earth. This threw some projections off by close to a half degree. v5.45 (July 2007) * fixed bug in DATE_time_date where it computed the wrong hours from second from midnight * fixed bug in GRIB2 decoder that limited grid size to 2000 gridpoints in either direction. * fixed bug in GRIB decoder that didn't calculate forecast time when its missing (must compute from valid time). * fixed bug in GRIB2 decoder for JMA template 50008 where time and level left unset * reworked hurricane program to handle subtropical and extratropical storms. * moved hurricane output directory for N Indian storms to n_indian (was indian_oc). * fixed problem in hurricane that put eastern Pacific storms in western Pacific directory. * added sort routine for advisories to hurricane. * fixed bug in ingestor that put wrong level in for hybrid levels in header file. * fixed bug in LRIT decoder that used the wrong offset value for locating images. It had been hard coded for 10 slices and that was eliminated. * added support for EuMetSat LRIT data. This uses a somewhat non-standard 12 bit JPG compression algorithm and thus needs a special JPG library. * added scaling for marker plotting in light program. * fixed issue in parse that only parsed for a single line for county FIPS and forecast zone codes. So if a PAC005 code went on for multiple lines such as in thunderstorm watch products, the other lines will also be parsed. * changed maxtop parameter to echotop in rad. * fixed bug in raw file reading that didn't offset the field number correctly. Field 0 should be the first field after the lat/lon. * fixed bug that would put a program in an infinite loop if an improper region was specified (not in wxp.reg file). * added testing for license file in /usr/local/wxp/etc directory. * fixed bug in forecast hour specification that wouldn't recognize values such as "3day-24acc". * added warning message that says license file not found. * fixed bug in grid plotting that didn't recognize streamline plotting when run from a plotting program such as sfcwx. v5.46 (Jan 2008) * fixed bug climat that didn't properly handle some max/min data in in the 444 group. * fixed bug in data.c where num_stats counter was one less than it should be. So OA processed with one less datapoint. * added code to handle forecast time labels in days (>800) and months (>900). * added DEF_valid and DEF_parse_name functions. * added processing of %{path} in name convention file. * reworked lat/lon decoding in frt_plt. In some cases processing would wrap to next line so changed to reading in data line by line rather than token by token. * added code for generic probability types. Before, everything was handled like it was from an ensemble run. Now it distinguished between the two. Also handles above min and below max cases. * fixed bug in GRIB2 decoder that didn't index grids properly. This meant contour wouldn't count multi-grids (U/V) and thus index would be off. * fixed bug in GRIB2 4.8 template where missing stat type is not handled properly. Now its assumed as a time range using t2 value. * added code in GRIB2 to handle time increments in days and months plus 3, 6 and 12 hour increments. * added code in GRIB2 to initial gridpoints to MISS. * fixed bug in GRIB2 decoder where allocation of bit map block not handled correctly. * fixed bug in GRIB2 decoder where bit map block not used for some grids. * added code to GRIB2 DS to reuse BMB from prior grids. * fixed bug in GRIB2 DS template 3 where complex spatial differencing not working. Added code for 1 but byte differencing (was only 2 byte). Fixed glen determination to add increment specification (inc_glen). * added visibility string setup for MOS data. Before only set up value. * added check for end of parsed data in mos_read. This ends search through file when no more valid headers and speeds up processing. * added coding for digital hybrid reflectivity and digital storm precipitation products. * added code in resrc to add resources that aren't in resource table to resource database. This increases use of resource file and command line to use values not in initial list. * fixed bug in sfc_dec where ///// was being interpreted as missing visibility. It should be for missing winds. * fixed bug in sfc_plt where wind direction was being reset is a map direction adjustment was being made. This would show up with a alt-v. * added check in license to see if license file could be opened. Added for debugging of invalid license. * change solaris to use STDARGS. * upped the number of significant levels from 100 to 200 to handle the hi-res vertical soundings. v5.47 (May 2008) * prototyped all functions * applied -Wall on compile to isolate and correct all warnings v5.48 (Aug 2008) * modified buffering in ingest to 10K * fixed bug in ingest relative to BUFR processing that would potentially read in beginning of next product * modified sacvt to treat NCD and NSC as clear skies * backported WXP6 MSG31 decoder for Level2 data to rad * added unit function to grdmath ( file "unit" new_unit = ) * fixed a bug in grd_read that does properly read in the units of a parameter * fixed some decode errors in the ETA and GFS MOS parameters for cloud height v5.48.1 (Oct 2008) * fixed small bug in gifcat related to color table expansion * fixed bug in griblook where grid_type was ignored on extraction * fixed issue with month computation in hurricane forecasts v5.48.2 (Nov 2008) * increased variable string in grbcalc to 200 characters * added reading of WXP6 cutoff values in image file (values ignored) * fixed bug in Coriolis computation in grd_math * fixed bug in variable processing in Level 2 plotting (rad) * modified earth radius value to match WXP6 * fixed specification of wchill temp in sfcwx v5.48.3 (Jan 2009) * added support for TDWR products * fixed a couple of bugs in NIDS decoder * fixed a bug in license decoder v5.49 (Mar 2009) * fixed bug in color fill where value is missing resulted in bad color * fixed several bugs relating to plotting of NAM MOS data * fixed NAM UA id search in mos.cty file * added NAM MOS output to fo_parse * fixed bug in model sounding plot where values from grid are missing * added demo licensing * added NAM MOS output to statlog * added decoding of additional parameters from NAM MOS (SNW, CIG, VIS, etc) * fixed bug in how MOS UA data is read in where second and third reports in product could be skipped * added functionality to parse NAM UA data to 60 hours * fixed several bugs related to TDWR decompression * added decoding of TEMP MOBIL products (IIAA, IICC, EEBB, etc) to uacvt * fixed bug in vector plotting that core dumped with color fill with values used v5.50 (Jun 2009) * changed com processing to handle end of line better on ingest. This includes checking for CR/CR/LF for end of line as opposed to LF. * added test for ETX to close file when no data is being processed. Removed blocking IO to preserve packet processing. * fixed bug in wrap testing for end of line. If end of line crosses a buffer boundary, it wouldn't recognize end of line. * fixed bug in ingest that could cause core dump for some run-on lines. * fixed bug in ingest for processing of GRIB header data. The parameter array was too small to handle possible parameters on NOAAPORT and thus some products weren't being saved properly and header files had wrong data. * added logging for partial header and if header does not follow end of ETX (possible bad data processing). * fixed a bug in the processing of TDWR data (bzlib compressed) where bad data resulted in infinite loop. * fixed bug in NIDS plotting that didn't process MESO data. The MESO specification went from YES/NO to MDA numbers. * fixed bug in NAPLN reading that didn't recognize extended date format. * fixed labeling of USPLN output (used to say NLDN). * fixed domain specification for MDR and RCM plotting and decoding. * fixed bug in sacvt that wouldn't recognize NIL Canadian reports. v5.51 (Aug 2009) * Added XFreePixmap to free up image mask pixmap on X Server * Upped GRIB size limit to 2MB * Added Mercator projection decoding for GRIB v2 data * Added code to read in special WRF GRIB parameters * Fixed bug in AREA reader for 64 bit processing (long to int) * Fixed bug in enhancement file reader to read in @label * Fixed bug in plot domain decoding where missing parameters weren't handled properly * Removed debug print line in ua_calc * Added code to swap levels in layers * Fixed bug in variable processing where "strm" plot type doesn't properly set up gridding and thus results in no grids to plot v5.52 (Sep 2009) * Fixed bug in colors that returned wrong fill patterns * Fixed a buffer overrun in contouring that could core dump if too many contour levels (with values) are specified * Fixed a buffer overrun on cty_tool where an ID variable wasn't large enough to hold buoy names * Changed additional long ints to ints in cty_tool to accomodate 64 bit issues * Fixed a couple of bugs in gks_img that were introduced in 5.51 * Fixed a buffer overrun in reading of WXP grid files. The string was too small to handle some information strings * Fixed a bug where units weren't applied to grids using header files. This only applied to griblook not displaying proper units * Fixed a bug in hurricane program where data read into a string was too short * Fixed issue with displaying WXP 6 RCM mosaics in WXP 5. This eliminates the winter masking that WXP 5 can't handle. * Fixed a bug where coded WMO id for Netherlands Antilles was wrong v5.53 (Dec 2009) * Converted all "long" integers to "int" for 64 bit binaries * Fixed a couple of bugs in the grd_math functions * Fixed a bug in grib.c where ny undefined before use * Fixed a bug in nids.c where bad data could result in infinite loop in Bzip2 data * Added default domain size in nids.c so that bad products don't produce strange domains * Added support for product 94 and 99 to nids.c * Fixed issue in RAW_write where 64 bit pointer and 32 bit int didn't work well. This resulted in bad raw file output on 64 bit machines v5.54 (Apr 2010) * Added support for NIDS products 134, 135