diff options
Diffstat (limited to 'doc/notes.v211')
-rw-r--r-- | doc/notes.v211 | 7769 |
1 files changed, 7769 insertions, 0 deletions
diff --git a/doc/notes.v211 b/doc/notes.v211 new file mode 100644 index 00000000..4e5b8e98 --- /dev/null +++ b/doc/notes.v211 @@ -0,0 +1,7769 @@ +System Notes File for IRAF Version 2.11. +Begun 12 June 1995. +------------------------------------------- + +unix/hlib/motd +unix/hlib/zzsetenv.def + Develop system version number incremented to V2.11. (6/12) + +pkg/images/geometry/t_geotran.x +pkg/images/geometry/geotran.x +pkg/images/geometry/geotimtran.x + Fixed a bug in the buffering of the x and y coordinate surface + interpolants which can cause a memory corruption error if, the + nxsample or nysample parameters are > 1, and the nxblock or nyblock + parameters are less than the x and y dimensions of the input image. + Took the opportunity to clean up the code. (6/13/95, LED) + + +pkg/math/curfit/cvpower.gx +pkg/math/curfit/cvpowerr.x +pkg/math/curfit/cvpowerd.x +pkg/math/curfit/doc/curfit.hd +pkg/math/curfit/doc/curfit.men +pkg/math/curfit/doc/cvepower.hlp + Added the new routine cvepower to the curfit math library. Cvepower + computes the errors in the power series coefficients equivalent + to the fitted Legendre and Chebyshev coefficients. Cvepower is + available in both real and double precision versions. (6/13/95, LED) + + +pkg/images/fmedian.hlp +pkg/images/fmode.hlp +pkg/images/median.hlp +pkg/images/mode.hlp +pkg/images/fmedian.par +pkg/images/fmode.par +pkg/images/median.par +pkg/images/mode.par +pkg/images/filters/fmedian.h +pkg/images/filters/fmode.h +pkg/images/filters/median.h +pkg/images/filters/mode.h +pkg/images/filters/t_fmedian.x +pkg/images/filters/t_fmode.x +pkg/images/filters/t_median.x +pkg/images/filters/t_mode.x +pkg/images/filters/fmedian.x +pkg/images/filters/fmode.x +pkg/images/filters/median.x +pkg/images/filters/mode.x +pkg/images/filters/fmd_buf.x +pkg/images/filters/fmd_hist.x +pkg/images/filters/fmd_maxmin.x +pkg/images/filters/med_buf.x +pkg/images/filters/med_sort.x + Added minimum and maximum good data parameters to the fmedian, fmode, + median, and mode filtering tasks. Removed the 64X64 kernel size limit + in the median and mode tasks. Replaced the common blocks with + structures and .h files. (6/20/95, LED) + +pkg/images/frmedian.hlp +pkg/images/frmode.hlp +pkg/images/rmedian.hlp +pkg/images/rmode.hlp +pkg/images/frmedian.par +pkg/images/frmode.par +pkg/images/rmedian.par +pkg/images/rmode.par +pkg/images/filters/frmedian.h +pkg/images/filters/frmode.h +pkg/images/filters/rmedian.h +pkg/images/filters/rmode.h +pkg/images/filters/t_frmedian.x +pkg/images/filters/t_frmode.x +pkg/images/filters/t_rmedian.x +pkg/images/filters/t_rmode.x +pkg/images/filters/frmedian.x +pkg/images/filters/frmode.x +pkg/images/filters/rmedian.x +pkg/images/filters/rmode.x +pkg/images/filters/med_utils.x + Added new ring median and modal filtering tasks frmedian, rmedian, + frmode, and rmode to the images package. (6/20/95, LED) + +doc/ports/notes.osf1 + + Added notes file from DEC Alpha OSF/1 port. (6/21) + +sys/fio/fioclean.x +sys/fio/stropen.x + Two new internal routines str{set,get}mode were added to stropen.x. + These are used to set or query the file access mode as stored for + the string file, which represents these in a file-dependent way. + fio_cleanup was modified to force the access mode of a string file + to READ_ONLY before closing it during file cleanup, to prevent the + writing of the trailing EOS when closing a string file opened for + writing. The latter could cause a segmentation violation if the + string buffer was no longer in a mapped region of memory, as is + possible if the string file is still open (i.e. not closed normally) + following task termination when fio_cleanup is called. This problem + was found when testing the OSF/1 version of IRAF. (6/21, merged from + OSF1 revision of 6/06) + +dev/termcap + Added "lp" as an alias for "lpr". (6/26) + +dev/hosts + Added solstice to the downtown servers (tucana,ursa,gemini,orion,bigx) + at Ed Anderson's request (6/26 RLS) + +unix/hlib/mkpkg + Changed "mkshlib.csh" references to "./mkshlib.csh" to make the + script more robust in cases where the user has the path screwed + up. (7/03) + +dev/tapecap + Added support for device mtc|mtcc for BIGX, an HPDAT drive using the + ST driver. Also generic device st-hpdat, the HPDAT on ST. (7/18) + +dev/hosts + Added aten, volans, & musca to all servers, deleted vegemite (7/18 MJF) + +dev/hosts + Added soleil to all downtown server at Ed Anderson's request. (7/27 MJF) + +sys/fmtio/strdic.x + Was not ignoring leading whitespace on the string to be tested, when + computing the length "len" of the string. (7/31) + +pkg/proto/t_wcsreset.x + Added an error check to the mw_openim command so wcsreset can erase + the world coordinate systems of images with wcss that it cannot + read correctly. (1/8/95, Davis) + +pkg/xtools/inlfit/incopy.gx +pkg/xtools/inlfit/incopyr.x +pkg/xtools/inlfit/incopyd.x + Changed 4 MEMP (Memi) references to Mem$t references. (02/8/95, Davis) + +dev/tapecap + Modified gemini entry to change WangDat to an HP drive. (8/10) + +sys/fio/zzdebug.x + Replaced the t_ndopen debug task by a more recent version. (8/28) + +lib/gio.h +sys/gio/gplcache.x +sys/gio/gctran.x + The WCS transformation caching mechanism used in gctran was not + reliable and could fail in some cases where the WCS was changed more + frequently than gctran was called. To make caching of WCS related + information more robust a new field GP_WCSORD was added to the GIO + descriptor. This is set to a unique integer ordinal when a WCS is + fixed. If the ordinal changes any routines that cache WCS information + should invalidate their cache (unless they cache it on the basis of + WCSORD). WCSORD will differ for WCS stored in different graphics + descriptors, so testing WCSORD also does an implicit test that the + GP has changed. (8/28) + +sys/mwcs/iwewcs.x + Modified so that if an image contains a partial Lterm consisiting + of an LTV but no LTM, the missing LTM will default to the identity + matrix instead of the zero matrix (the latter causes a segvio if you + try to invert it). An image with a zero LTM is illegal but MWCS + should not die with a segvio in this case. (8/29) + +sys/imio/immaky.x +sys/imio/mkpkg + When copying an image section IMIO will call MWCS to update the Lterm + of the output image. This requires that it load any existing WCS + so that it can be modified and written out to the output image. IMIO + was modified to put the mw_open in an iferr block, printing a warning + message if the WCS cannot be loaded, rather than aborting the immap. + Aborting means that all IRAF imaging tasks fails to access the image + if it contains a WCS of a type not supported by IMIO. (8/29) + +sys/mwcs/iwgbfits.x + The code which reads in multiline FITS strings (WATi_j etc.) would + always read 68 characters per card. This was changed to read at + most 68 characters, terminating if newline, EOS, or a single closing + quote is seen in the input data. This allows the string on a line to + be less than 68 characters. It also avoids a bug seen with non-blocked + headers where the cards may contain less than 80 characters. (8/29) + +sys/mwcs/iwpstr.x + The final card of a multi-card string is no longer blank filled, i.e. + the closing quote will appear at the end of the string instead of in + column 80. (8/30) + +sys/mwcs/mwsaveim.x + The code which puts spaces between a sequence of attribute=value + keywords in a WCS attribute list was improved to avoid an unnecessary + space at the end of the list (spaces are now only used between the + members of the list). (8/30) + +sys/imio/db/impstr.x + When writing a string valued parameter the code checks for a trailing + quote and tries to add one if it is missing. The closing quote is + omitted if it would overwrite a data character - it isn't required + when reading cards unless the string ends before column 80. (8/30) + +sys/mwcs/mwsave.x + The DBUF offset in the save header was not being aligned to double. + (8/30) + +------------------------------------- +V2.10.4 patch 1 generated. (8/30) + +doc/rev2.hlp + Renamed this file to rev2.txt, it is not a help file. (9/03) + +unix/boot/bootlib/osfiletype.c + Added ".gz" to the list of "source" file types. Also added ".fit" + as an alias for ".fits". (9/03) + +mkpkg +noao/mkpkg + Added entries for linux and linuz architectures. (9/06) + +unix/hlib/strip.iraf +noao/lib/strip.noao + Replaced by updated versions, some files moved around and others + have been added. (9/06) + +local/.cshrc + Added "." and moved /usr/lang up in the hierarchy. (9/21) + +hlib/extern.pkg + Added the helpdb for the finder package on gemini and ursa. The + package is still loaded through the nlocal package. (10/12 RLS) + +sys/mwcs/imwcs.h + CROTA was being stored internally as an integer, causing small + truncation errors of non-integral rotational angles. (10/18) + +dev/graphcap +dev/imtoolrc + Added a new 8192x8192 frame buffer (imt7|imt8192). Redefined the + old imt7 (imt4x1) as imt19. (11/01) + +pkg/images/tv/imexamine/ierimexam.x +pkg/images/tv/imexamine/stfmeasure.x + +pkg/images/tv/imexamine/starfocus.h + +pkg/images/tv/imexamine/mkpkg +pkg/images/tv/doc/imexamine.hlp +lib/src/imexamine.key + New FWHM estimates based on the enclosed flux and a direct + measurement were added to the 'a' and 'r' keys. The weights for + the Gaussian fit were modified to reduce the influence of pixels + outside the half-maximum radius. The ? help and help page were + revised to described the new output and algorithms. (11/09) + +dev/hosts + Added 'inti' to all downtown servers. (11/20 MJF) + +pkg/images/median.par +pkg/images/rmedian.par +pkg/images/mode.par +pkg/images/rmode.par +pkg/images/fmedian.par +pkg/images/frmedian.par +pkg/images/fmode.par +pkg/images/frmode.par +pkg/images/doc/median.hlp +pkg/images/doc/rmedian.hlp +pkg/images/doc/mode.hlp +pkg/images/doc/rmode.hlp +pkg/images/doc/fmedian.hlp +pkg/images/doc/frmedian.hlp +pkg/images/doc/fmode.hlp +pkg/images/doc/frmode.hlp +pkg/images/filters/t_median.x +pkg/images/filters/t_rmedian.x +pkg/images/filters/t_mode.x +pkg/images/filters/t_rmode.x +pkg/images/filters/t_fmedian.x +pkg/images/filters/t_frmedian.x +pkg/images/filters/t_fmode.x +pkg/images/filters/t_frmode.x + Added a verbose parameter to the median, rmedian, mode, rmode, fmedian, + frmedian, fmode, and frmode tasks. (11/27/95, Davis) + +dev/hosts + Corrected path to irafks.e for cephus on all servers (11/30 MJF) + +unix/boot/spp/xpp/xppcode.c + Modified XPP to make keyword recognition case sensitive. Keywords + such as "int", "char", "procedure", etc. must be lower case to be + recognized. This permits macros to use the upper case versions of + these keywords. (12/05) + +pkg/cl/debug.c + Added INDXINCR and PUSHINDEX to the debug code. (12/14) + +pkg/cl/builtin.c +pkg/cl/compile.c +pkg/cl/debug.c +pkg/cl/exec.c +pkg/cl/grammar.y +pkg/cl/main.c +pkg/cl/opcodes.c +pkg/cl/opcodes.h +pkg/cl/prcache.c + 1. Fixed minor bugs in the CL array code which showed up on the 64bit + DEC Alpha. The array code had builtin assumptions about the size of + structures stored in CL memory, but on 64 bit systems the CL stack + and dictionary have a 64 bit memel size, rather than 32 bit. + + 2. Added a new builtin "d_trace" which permits instruction and + process tracing during execution. Typing d_trace without any + arguments toggles this feature. An optional argument 0 or 1 may be + used to disable or enable instruction tracing. A source line trace + feature might have been nicer, but instruction tracing should still + be of use for tracking down bugs in scripts, or otherwise revealing + what is going on when the CL executes a task. (12/16) + +sys/fmio/zzdebug.x + Added a parameter to the create datafile task to allow specification + of FM_MAXPTPAGES (max page table pages), for testing large datafiles. + (12/18) + +dev/hosts + Added new solaris machine oso to all servers. (1/29/96 MJF) + +pkg/images/imarith/imexpr.gx + Modified imexpr so that it will accept an image name that looks like + a number in the first few characters, but which is really an image + name. For example, "123.imh" or "../foo.imh". The previous version + of imexpr was treating any string which looked like a number in the + first few characters as a numeric constant. (2/8/96 LED 2/14 DCT). + +dev/hosts + Eliminated all references to /gemini and /ursa since all machines + have been updated such that /iraf is the correct path. Merged all + changes from other servers to tucana so all hosts files are now + identical, new machines added include ozzie, verdi, corondito and + pearl.kpno. Backups of previous files will be maintained. (2/14 MJF) + +pkg/images/geometry/t_geotran.x +pkg/images/geometry/geograph.x +pkg/images/doc/geomap.hlp + Corrected the definition of skew in the routines which, compute the + geometric interpretation of the 6-coefficient fit, compute the + coefficients from the geometric parameters, and in the relevant help + pages. (2/19/96, LED) + +sys/fio/zzdebug.x + Spiffed up the "daytime" debug/test task to permit entry of a host + name, so that one can use this to find out what time it is at some + site halfway around the world. (2/23) + +pkg/images/tv/imexamine/iejimexam.x +pkg/images/tv/jimexam.par +pkg/images/tv/doc/imexamine.hlp + There were several errors in this which only showed up when using a + world WCS. The parameter prompt and help now indicate the initial + sigma value is in pixels even when fitting in world coordinates. + (2/27/96, FV) + +pkg/images/tv/imexamine/iemw.x + The inverse WCS function was incorrect and is fixed. (2/27/96, FV) + +pkg/dataio/doc/rfits.hlp + Added a note about support for unsigned short integers to the + rfits help page. (2/27/96, LED) + +pkg/xtools/icfit/icvshow.gx +pkg/xtools/icfit/icshow.x +pkg/xtools/icfit/icerrors.gx + All output except the tabular part of :xyshow now begins with + the comment character. (2/29, Valdes) + +pkg/utilities/curfit.gx + Removed repeated output and added a comment character to the table + header line. (2/29, Valdes) + +dev/hosts + Changed GONG machines soi/mdi to use bin.ssun after solaris upgrades. + (3/8/96 MJF) + +sys/fmio/fmio.h +sys/fmio/fmlfopen.x +sys/fmio/fmlfbwr.x +sys/fmio/fmlfbrd.x +sys/fmio/fmioextnd.x +sys/fmio/fmclose.x + 1. Changed the lfile pagemap (LF_PAGEMAP) from type short to int. + This is entirely an internal array, created at lfile open time from + the global pagemap, and never written out, so there should be no + problem changing the datatype of the array. A type short lfile + pagemap limits the maximum datafile size by limiting the max file + offset to 32K datafile pages. This is not a problem for the global + page table as the global table stores the lfile number in each PTE, + with the offset of the PTE entry giving the associated file offset + (page number). + 2. Increased the default lfile pagemap size and increment on + overflow. (3/11) + +lib/qpset.h +sys/qpoe/qpoe.h +sys/qpoe/qpstati.x +sys/qpoe/qpseti.x +sys/qpoe/qpopen.x +sys/qpoe/qpmacro.x +sys/qpoe/qpbind.x + Added a new parameter "maxptpages" (QPOE_MAXPTPAGES) to QPOE. This + is a datafile control parameter similar to "maxlfiles" or "pagesize". + The pagesize and matptpages together determine the maximum datafile + size. In the past we have had to increase the pagesize to accomodate + very large datafiles, but beyond a certain point it is better to + increase the maximum page table size (maxptpages). Since QPOE files + can be very large it is necessary to allow control of this parameter + from within QPOE. (3/11) + +dev/hosts + Added Doug Geisler's machine kukita to all servers. (3/11/96 MJF) + +sys/fmtio/dtoc.x + Added some rounding to avoid printing numbers such as 12:29:60.0 + when formatting sexagesimal (HMS or MS) numbers. (3/12) + +sys/mwcs/iwewcs.x + Modified the code which computes the CD matrix from CDELT/CROTA. + The old code computed the diagonal (scale) terms correctly but the + rotation terms were evidently incorrect. The old code was based on + the 1988 Hanisch and Wells WCS paper and the new code is based on a + more recent paper by Mark Calabretta et. al. which supercedes the + 1988 representation. The affect of this change should be limited + as it only affects rotated images for which CDELT is given but no + CD matrix is defined. (3/13) + +pkg/images/tv/src/iecolon.x +pkg/images/tv/src/starfocus.h +pkg/images/tv/src/stfmeasure.x +pkg/images/tv/src/ierimexam.x +pkg/images/tv/rimexam.par +pkg/images/doc/imexamine.hlp +lib/scr/imexamine.key + The radial profile fitting and width measurements now have an option to + use a Gaussian or Moffat profile model. The model is selected by a + new "fittype" parameter. A new "beta" parameter may be specified as + INDEF to be determined from the fit or have a fixed value. The Moffat + profile model does better in producing consistent FWHM values so + this is the default. (3/16, Valdes) + +math/gsurfit/gsrestore.gx +math/gsurfit/gsrestorer.x +math/gsurfit/gsrestored.x + Changed the type declaration of the xmin, xmax, ymin, ymax variables + from real to PIXEL to avoid machine precision problems. (3/21 Davis) + +pkg/cl/builtin.c + Modified the clprintf code to support INDEF operands. (3/23) + +pkg/images/tv/imedit/epsearch.x +pkg/images/tv/imedit/epgcur.x + 1. The search algorithm produced incorrect results if part of the + aperture was off the edge (negative image coordinates). + 2. The rounding was incorrect when part of the aperture was off the + edge (negative image coordinates). + 3. A floating operand error occurs when a key is given without + coordinates. + (3/26, Valdes) + +pkg/plot/t_implot.x + When the vector being plotted was constant the 'l' and 'c' keys + selecting lines/columns from the right plot axis did not work. The + code was fixed for this case. (3/27, Valdes) + +pkg/images/geometry/xregister/rgxfit.x + Changed several Memr[] references to Memi[] in the rg_fit routine. + This type conversion bug was causing a floating point error + in the xregister task on the Dec Alpha machines if the coords file + was defined, and could potentially cause problems on other machines. + (Davis, April 3, 1996) + +unix/os/gmttolst.c +unix/boot/bootlib/ostime.c + Removed the type long variables gmtl, lstl and modified all calls to + localtime() so that the argument is of type time_t. This is standard + for all modern systems. Some older systems still require that the + argument be type long, but as this is nonstandard it should be + ifdef-ed in the source for these older systems. (4/04 1996) + +unix/hlib/libc/libc.h + The macros Memcptr and Memiptr included a "+ 1" which shouldn't have + been there. The one indexing correction was already being done in + the Memc/Memi macros and Memcptr/Memiptr take a zero indexed C pointer + as input. This was causing a bug in LIBC version of realloc, which + is not used anywhere in the IRAF system code. (4/05) + +pkg/images/tv/imexamine/ierimexam.x +pkg/images/tv/imexamine/stfmeasure.x + Fixed incorrect datatype declaration "real np" -> "int np" in various + related places. (4/9/96, Valdes) + +unix/os/zmain.c + Added a #ifdef SYSV conditional to change the calling sequence for + setpgrp() for SYSV and BSD systems. (4/24) + +sys/imio/iki/plf/plfopen.x + Fixed an imerr() call which had the wrong argument type. (5/06) + +sys/libc/realloc.c + Modified to work when called with a null pointer. (5/06) + +sys/gio/stdgraph/stgdrawch.x + The text drawing routines were not controlling the polyline width + when drawing characters in software mode using polylines. There is + no line width attribute for graphics text and we probably don't want + one, so the code was modified to force the line width to 1 when + drawing software characters. (5/10) + +unix/boot/bootlib/osgetenv.c + The envinit code calls _os_getenv to fetch the value of "pkglibs". + This code assumes that _os_getenv returns the string argument, but + nothing was being returned if the named environment variable was not + found. Changed it to return a NULL-terminated empty string in this + case. (5/10) + +sys/etc/mkpkg +sys/etc/onentry.x +sys/etc/main.x +unix/os/zmain.c + 1. The IRAF main (irafmn) was changed to an integer function and + modified to return an exit status. If a task aborts and the main + exits without running any more tasks (as when executing a task at + the host level where only a single task is run) then the error status + of the task is returned. In normal use as a connected process this + condition never occurs and the main always returns XOK as the status. + + 2. Several calls to sys_panic in various etc$ routines were modified + to ensure that a zero error code is not returned. sys_panic returns + the error code as the exit status of the process. + + 3. The process main (zmain.c) was modified to call IRAF_MAIN as an + integer function and to return its exit status. + 4. The call to exit() in zmain.c was changed to _exit(). (5/11) + +pkg/plot/t_graph.x +pkg/plot/graph.par +pkg/plot/doc/graph.hlp + Added parameters "ltypes" and "colors" to specify a list of line types + and colors when doing multiple data sets. (5/13, Valdes) + +---------------------------------------- +V2.10.4 patch 2 release. (5/22 1996) + +unix/boot/bootlib/envinit.c + Fixed a typo in some code that went "printf (stderr, ...)" (should be + fprintf), also changed following fflush to flush stderr. (5/27) + +unix/boot/bootlib/vfn2osfn.c + Deleted some unneeded semicolons from some stub routines, e.g. in + "KI_SEND(){};" the ; should not be there. (5/27) + +unix/boot/generic/mkpkg.sh +unix/boot/mkpkg/mkpkg.sh +unix/boot/rmbin/mkpkg.sh +unix/boot/rmfiles/mkpkg.sh +unix/boot/rtar/mkpkg.sh +unix/boot/wtar/mkpkg.sh +unix/boot/spp/mkpkg.sh +unix/boot/spp/mkxc.sh +unix/boot/rpp/mkpkg.sh +unix/boot/xpp/mkpkg.sh +unix/boot/xyacc/mkpkg.sh + Replaced HSI_CF by HSI_LF in the link line (5/28) + +unix/hlib/irafuser.csh + Added a dummy definition of HSI_LF (not used in SunOS/IRAF but is + needed on other platforms). (5/28) + +unix/boot/rmfiles/mkpkg.sh + Added a (char *) declaration for vfn2osfn(). (5/28) + +pkg/cl/grammar.h +pkg/cl/globals.c + Added global definitions for parse_state, proc_script, and parse_pfile + to globals.c and modified grammar.h to define these as extern (found + with the IRIX 5.3 port). (6/03) + +pkg/obsolete/<imcombine> - + The old (V2.9) IMCOMBINE task was removed. (6/14 FV) + +pkg/obsolete/t_fixpix.x + +pkg/obsolete/fixcol.gx + +pkg/obsolete/t_fixline.gx + +pkg/obsolete/ofixpix.par + +pkg/obsolete/doc/ofixpix.hlp + +pkg/obsolete/mkpkg +pkg/obsolete/x_obsolete.x +pkg/obsolete/obsolete.cl +pkg/obsolete/obsolete.hd +pkg/obsolete/obsolete.men + Moved the V2.10.4 version of PROTO.FIXPIX to OBSOLETE and renamed + it to OFIXPIX. (6/14 FV) + +pkg/proto/generic/ + +pkg/proto/imfunc.x -> generic/ +pkg/proto/imrep.x -> generic/ + Added a generic directory for generic files. The generic procedures + imfunc.x and imrep.x are now in this directory. (6/14 FV) + +pkg/proto/t_fixpix.x +pkg/proto/fpfixpix.gx +pkg/proto/fixpix.par +pkg/proto/text2mask.par + +pkg/proto/t_text2mask.x + +pkg/proto/t_mask2text.x + +pkg/proto/doc/fixpix.hlp +pkg/proto/doc/text2mask.hlp + +pkg/proto/mkpkg +pkg/proto/x_proto.x +pkg/proto/proto.cl +pkg/proto/proto.hd +pkg/proto/proto.men + Replaced the old version of FIXPIX by a new version that works with + mask images. Two new tasks were also added, TEXT2MASK and + MASK2TEXT, that convert from the old text file description to mask + images and back. The MASK2TEXT task is hidden to discourage + continued use of the text file description. (6/14 FV) + +unix/boot/spp/xc.c + Fixed a couple bugs in the PKGENV processing code. (7/05) + +doc/ports/notes.irix + + Installed the notes file from the IRIX 5.3 port. (7/07) + +unix/os/irafpath.c + Added entries for Solaris, Linux, FreeBSD. (7/17) + +unix/os/zfaloc.c +unix/os/zfiobf.c + Changed type of lseek() to off_f. (7/17) + +unix/boot/spp/xpp/xppcode.c + Changed warn() to a static function. (7/17) + +mkpkg +noao/mkpkg + Added an entry for the "freebsd" architecture. (7/17) + +pkg/images/filters/median.x + The routine mde_yefilter was being called with too many arguments. + (7/18 LED) + +pkg/xtools/inlfit/ingresults.gx + Changed several INDEFR references to INDEF references so that INDEF + as the correct data type (real or double) in the output .x files. + (7/18 LED) + +sys/gio/fpequald.x +sys/gio/fpequalr.x + Backed off the tolerance slightly, from 10*EPSILON to 32*EPSILON. + (7/25) + +sys/imfort/bfio.x + In zfaloc, the first arg to strpak was changed from fname (a Fortran + character variable which was incorrect) to sppname. (7/17(26)) + +pkg/images/imarith/icsort.gx + There was an error in the ic_2sort routine when there are exactly + three images that one of the explicit cases did not properly keep + the image identifications. See buglog 344. (8/1 FV) + +dev/hosts + Revised the list of Kitt Peak hosts. (8/7 RLS) + +pkg/proto/fields.par +pkg/proto/doc/fields.hlp + Changed the default lines in FIELDS to an open upper limit. (8/22 FV) + +pkg/images/tv/imexamine/stfmeasure.x + Fixed bug in evaluation of enclosed flux profile in which the scaled + radius was used for the gaussian subtraction stage instead of pixels. + This does not currently affect IMEXAM because the scale is fixed + at 1. (8/29, FV) + +unix/os/zfnbrk.c + Modified this routine to ignore file or directory characters other + than those it considers to be file or directory name delimiters. + On platforms that permit it, the effect is to permit characters (such + as + and -) in filenames other than simple identifier characters. + There is no expectation at this point however that all IRAF code will + permit this. (9/03) + +dev/hosts + Updated the hosts file on all Tucson servers for rainbow, Jim + Deveny's new Sun. (9/10/96 jb) + +pkg/system/phelp.cl + Modified to copy the "template" argument into a local variable since + it is referenced twice in the script. (10/10) + +sys/fio/fioclean.x + The file descriptor was being accessed after the file had been + closed. (10/11) + +unix/os/zfiond.c + Added a ":<flag>" field to the ND network driver. The only protocol + flags currently supported are "text" and "binary". If "text" is + specified then the datastream is assumed to consist of byte packed + ascii text, and the driver will automatically convert to and from + SPP chars during i/o. (10/29) + +sys/fio/zzdebug.x + Added a new debug task "http". Given a hostname and a HTTPD-root + relative file path the task will connect to the HTTP server on the + given host and fetch the file at the given path. The output + consists of the HTTP/1.0 protocol header followed by a blank line + and the contents of the requested file. (10/29) + +pkg/images/tv/wcslab/t_wcslab.x +pkg/images/tv/doc/wcslab.hlp + Added an "overplot" option to append to a plot but with a different + viewport. (11/06/96 Valdes) + +pkg/images/imarith/t_imcombine.x +pkg/images/imarith/icombine.gx + Changed the error checking to catch additional errors relating to too + many files. (11/12/96, Valdes) + +dev/hosts + Added driftwood to all downtown servers. (11/18/96 MJF) + +dev/hosts + Updated block of KPNO hosts on solaris tree on Gemini. + This was up to date on development system. (11/19/96 RLS) + +sys/fmtio/sscan.x +sys/fmtio/fscan.x +sys/fmtio/clscan.x +sys/fmtio/scan.com + Modified scan.com to dimension scanbuf locally as SZ_SCANBUF instead of + SZ_COMMAND, in the process increasing the size from 1024 to 4096. + Modified sscan to check for overflow of the scan buffer. (11/19) + +sys/ki/ki.h + Increased maximum network hosts in the in-core host table from 128 to + 256. (11/21) + +pkg/images/tv/imedit/epgsfit.x +pkg/images/tv/imedit/epcolon.x +pkg/images/tv/doc/imedit.hlp +pkg/images/tv/imedit/imedit.par + Added a median background if the xorder or yorder is zero. + (11/22/96 Valdes) + +dev/hosts + Cleaned up the hosts table: Deleted + adonis aldebaran auriga + columba crater irafdemo + libra noctua octans + omega serpens suntest + verdi vela + Fixed path names for mytoy and scorpius (11/21/96 MJF) + +pkg/images/imarith/icsetout.x +pkg/images/doc/imcombine.hlp + A new option for computing offsets from the image WCS has been added. + (11/30/96 Valdes) + +pkg/images/tv/display/sigm2.x + + Added a version of the spatial interpolation routines that allows masks + to interpolate the input across bad pixels. (12/5/96, Valdes) + +pkg/images/tv/display/t_display.x + 1. Fixed numerous problems with the coordinate system. + 2. Fixed a bug in how ztrans=log was done. + (12/5/96, Valdes) + +pkg/images/tv/display/iishdr.x +pkg/images/tv/display/iisers.x + Replaces SPP int -> short assignments by calls to achtiu because of + overflow problems with some VMS fortran compilers. + (12/6/96, Valdes as reported by Zarate) + +pkg/images/tv/display/imdmapfr.x +pkg/images/tv/display/imdputwcs.x + + Added two routines to hide knowledge of the channel structure and + other details from the calling routines. (12/11/96, Valdes) + +dev/hosts + Changed hohokam to ssun, updated all servers w/ master copy from + tucana to remove hosts and fix /gemini path names. (1/7/97 MJF) + +dev/hosts + Changed the following SWN machines to bin.ssun: + aquarius aten bokchoy + carina (new) hedgehog herbie + inti mdi potosi + soi soleil + Updated all servers. (1/15/97 MJF) + +pkg/xtools/dttext.x + Added the routine dtgetd to the text database package. (1/16/97 LED) + +dev/hosts + Changed norma to a solaris box. (1/24/97 MJF) + +unix/boot/bootlib/osfiletype.c + Added several entries for files considered to be "source" files. + These include .pl, .gif, .jpeg, and .tiff (.fits is already present). + There are cases where it may make sense to include these files in + the machine indendent source tree, e.g. for small test data files + or for online help. (1/11) 1997 + +dev/hosts + Added George's linux box aloe to all servers. (2/13/97 MJF) + +unix/boot/spp/xpp/decl.c +unix/boot/spp/xpp/xppcode.c + The recent change of warn() to static in xppcode.c caused a problem + as warn is also used in decl.c. Changed warn() back to an external + function but changed the name to xpp_warn to avoid whatever the + platform-specific problem was that resulted in the original fix + (probably warn was an internal function in some platform system + library). (3/03) + +sys/mwcs/wfmspec.x + On line 327, changed din=log10(in[1]) to din=log10(din). (3/04) + +-------------------------------- +Did a diff/merge of recent tucana HSI changes into the Solaris/IRAF HSI. +Replaced the "unix" directory on tucana SunOS/IRAF by the version from +Solaris/IRAF. This HSI is supposed to work for both SunOS and Solaris +(SunOS compatibility was preserved but never tested during the Solaris/IRAF +port). Did a bootstrap and sysgen under both SunOS and Solaris. + +Mounted tucana iraf.develop as iraf.develop on Data. tucana iraf (irafx) +is now solaris/iraf as well as sunos/iraf, they are the same thing. One +benefit of this is that irafx is now available on solaris systems in the +building (although we do have to update the ssun binaries periodically or +it does no one any good). A complication is that since we have to update +the ssun binaries, it is now more likely that the architecture may be set +to something other than sparc. (3/19 1997) + +local/.cshrc +local/.login + Modified to work for both SunOS and Solaris. (3/19) + +unix/as.sparc/enbint.s + This file from Solaris/IRAF isn't used by SunOS/IRAF, but it is + probably better to provide it in the library than to add conditionals + to the build files in OS. (3/19) + +unix/boot/bootlib/osfiletype.c +unix/boot/bootlib/vfn2osfn.c +unix/boot/spp/xpp/decl.c +unix/boot/spp/xpp/xppcode.c +unix/hlib/libc/kernel.h +unix/os/irafpath.c +unix/os/zfaloc.c +unix/os/zfiobf.c +unix/os/zfiomt.c +unix/os/zfiond.c +unix/os/zlocpr.c +unix/os/zzstrt.c + Assorted minor changes to make these files work for both SunOS + and Solaris. (3/19) + +unix/shlib/medit.c +unix/shlib/mkpkg +unix/shlib/mkpkg.sh +unix/shlib/mkshlib.sos4 +unix/shlib/mkshlib.ssol +unix/shlib/mkshlib.ssol-sc34 + Various file modifications and file name changes to make shlib + build for both SunOS and Solaris. (3/19) + +pkg/math/curfit/cvacpts.gx +pkg/math/curfit/cvacptsr.x +pkg/math/curfit/cvacptsd.x +pkg/math/curfit/doc/cvpower.hlp +pkg/math/curfit/cvpower.gx +pkg/math/curfit/cvpowerr.x +pkg/math/curfit/cvpowerd.x + The weights computed by the WTS_CHISQ option in the routines + cvacpts[rd] were not being forced to be positive as intended. (3/20) + + There was an inconsistency in the way the ncoeff argument to the + cvpower[rd] routines was being used internally. Ncoeff was intended + to be an output argument but was being used as an input argument by + one of the routines called by cvpower. (3/20) + +sys/mtio/mtgtyopen.x + MTIO was modified to add support for server-specific tapecap files. + When opening the tapecap file MTIO will now look for "tapecap.<node>" + followed by the default "tapecap". <node> should be the hostname + (as used by IRAF networking) of the server hosting the tape drives + described by the tapecap file. For example if host "gemini" serves + up some tape drives it's tapecap file is named "tapecap.gemini". + If a server-specific tapecap file is not found the default "tapecap" + (on the possibly remote server node) is used. This feature allows + a single IRAF installation to be shared by multiple servers. (3/21) + +dev/README +dev/tapecap.sunos + +dev/tapecap.solaris + + Since the Sun/IRAF DEV is now shared by both SunOS and Solaris it + now contains the template tapecap files for both systems. The README + in DEV contains some pointers on configuring tapecap and other device + files. (3/21) + +pkg/images/tv/display.par +pkg/images/tv/display/t_display.x +pkg/images/tv/display/zscale.x +pkg/images/tv/display/sigm2.x + +pkg/images/tv/display/maskcolor.x + +pkg/images/tv/display/dspmmap.x + +pkg/images/tv/display/display.h +pkg/images/tv/display/gwindow.h +pkg/images/tv/display/mkpkg +pkg/images/tv/doc/display.hlp + 1. Improved the structure of DISPLAY. + 2. Fixed coordinate system errors. + 3. Added parameters to display bad pixel masks and overlay masks. + 4. The z scaling sampling may use a pixel mask or image section. + 5. The z scaling excludes bad pixels. + (3/20, Valdes) + +-------------------------------- +The following series of revisions were made to increase the size of various +system buffers. This included a full system reboot and recompile. (3/24) + +lib/fio.h +sys/fio/vfnmap.x +sys/fio/vfntrans.x + Various buffer sizes affecting filename mapping were increased. + SZ_VFNFN (max length of the root field of a VFN) went from 32 -> 127. + SZ_OSDIR (max length of the osdir field of a VFN) from 79 -> 255. + SZ_FFNAME, an internal filename buffer, went from 127 -> 255. + In an unrelated change SZ_SPOOLBUF, the intial size of a spool + buffer, was increased from 1024 to 4096. (3/23) + +unix/hlib/config.h + 1. MAX_ROOTLEN was increased from 32 to 128. This is supposed to be the + limit the host system places on the root portion of a filename (that + is, only the root name, not the pathname). Anything in the range + 128-256 is typical for unix systems today. + 2. The maximum number of open VOS files was increased from 128 -> 256. + (3/23) + +sys/fio/fntgfn.x + SZ_PATTERN, SZ_TEMPLATE, SZ_LDIR, SZ_PATSTR were all increased, + although so far as I know there has never been a case of pattern + buffers overflowing. The new limit for a pattern string is about + 1024. (3/23) + +unix/hlib/iraf.h + SZ_FNAME went from 63 -> 255. + SZ_PATHNAME went from 127 -> 511. + SZ_LINE went from 161 -> 1023. + SZ_COMMAND went from 1024 -> 2047. (3/23) + +unix/hlib/iraf.h +unix/hlib/mach.h + MAX_EXPONENTD went from 38 (same as real) to 308, the value for + IEEE double. MAX_DOUBLE increased from 0.99d37 to 0.99d307. + INDEFD was changed from 1.6d38 to 1.6d308 for IEEE systems. (3/23) + +unix/hlib/libc/libc.h +unix/hlib/libc/spp.h + FIO_MAXFD, INDEFD, SZ_LINE, SZ_FNAME, SZ_PATHNAME, SZ_COMMAND were + updated to agree with the SPP values. (3/23) + +sys/imio/iki/stf/stfrdhdr.x + Unrelated STF bug fix. stfrdhdr.x was modified to handle the case + where datamin/datamax were not defined in the GPB, but were defined + in the main image header. (3/24) + +unix/boot/spp/xpp/xppmain.c + Removed a redundant SZ_PATHNAME. (3/24) + +unix/shlib/mkpkg +unix/shlib/mkshlib.sos4 + Changed the address of the shared library from 0xa000000 to 0x10000000. + This increases the maximum available per-process dynamic memory from + 167 MB to 268 MB (much more is possible if the process is statically + linked). (3/24) + +unix/os/zzstrt.c + Changed some address-related ints to unsigned just to be safe. (3/24) + +sys/etc/pagefiles.x + Increased SZ_LONGLINE from 1024 to 4096. At 1024 it was the same as + the new SZ_LINE, causing a loop test to fail. (3/25) + +pkg/images/tv/rimexam.par +pkg/images/tv/doc/rimexam.par + Changed the zero point of the magnitude scale from 30.0 to 25.0 + for the sake of consistency with other photometry tasks. (3/31, LED) + +pkg/images/tv/imexamine/ierimexam.x + The log output for 'a' or 'r' has one line per measurement as in + previous versions. The standard output, however, uses two lines to + print nicely on 80 column windows. (3/31, FV) + +pkg/dataio/mkpkg +pkg/dataio/dataio.cl +pkg/dataio/dataio.hd +pkg/dataio/dataio.men +pkg/dataio/x_dataio.x +pkg/dataio/import/ + +pkg/dataio/import.par + +pkg/dataio/export/ + +pkg/dataio/export.par + +pkg/dataio/doc/import.hlp + +pkg/dataio/doc/export.hlp + + Installed the IMPORT/EXPORT task for general use. The images database + used by the IMPORT task is currently defined to be stored in + dataio$import/images.dat. (3/31/97 MJF) + +pkg/proto/proto.cl +pkg/proto/proto.men +pkg/proto/proto.hd +pkg/proto/x_proto.x +pkg/proto/mkpkg + The tasks imalign, imcentroid, imfunction, imreplace, wcsedit, and + wcsreset have been deleted from the proto package and moved to the + reorganized images package. (3/31/97 LED) + +lib/imhdr.h +lib/imio.h + The sizes of the pixel file, header file, title and imhistory strings + were increased. Defines were added for the image header file and + pixel file "magic' strings. A couple fields were added relating to + byte swapping. IM_SWAPPED, in the image header, tells whether the + pixels in the disk image are byte swapped. (3/31) + +sys/imio/iki/oif/imhv1.h +sys/imio/iki/oif/imhv2.h +sys/imio/iki/oif/mkpkg +sys/imio/iki/oif/oif.h +sys/imio/iki/oif/oifmkpfn.x +sys/imio/iki/oif/oifopen.x +sys/imio/iki/oif/oifopix.x +sys/imio/iki/oif/oifrdhdr.x + +sys/imio/iki/oif/oifupdhdr.x +sys/imio/iki/oif/oifwrhdr.x + +sys/imio/iki/oif/oifwphdr.x - + It was necessary to change the OIF kernel to increase the maximum + path length for header and pixel files. This made it necessary to + change the disk image format, since the old format only allowed 80 + characters for the pixel file pathname. In the process reading and + writing the disk header was separated out from the in-memory + header. Support for two versions of the image and pixel file + headers were added. The "magic" string in the image or pixel file + header identifies the version. Old (version 1) image headers have + "imhdr" at the head of the file, with the string in SPP chars. The + new (version 2) headers have "imhv2" as the magic string. V2 headers + are byte packed and machine independent. The path limit is 255. + (3/31) + +sys/imio/immaky.x +sys/imio/imrdpx.x +sys/imio/imwrpx.x + 1. Support was added for byte swapping pixels. With the machine + independent V2 image header, this allows .imh images to be read on + any node (integer) or any IEEE-compatible node (floating). The + pixels are written in the native swap order of the creating host, + but the order is recorded in the IM_SWAPPED field of the image header, + and IMIO uses this to determine whether or not the pixels need to + be byte swapped during i/o. + 2. Minor changes to trim junk data after EOS delimited strings. + Since the V2 headers are byte packed the string data in these headers + can be viewed with Unix tools such as "less" and "strings". (3/31) + + Some pointers: "strings foo.imh" (or other tools like less) can be + used at the Unix level to look at V2 image headers. New images are + always written with host-native binary format pixels, so there is no + byte swapping involved for images read and written on the same + host. Images can any other (IEEE) host can be read or written but + there may be some slight overhead for byteswapping. If the image is + rewritten however using imcopy, the bytes will be swapped to the + native ordering of the new host. + +pkg/images/imutil/src/imheader.x + The only change so far was to eliminate some histogram dependence, + since this unused feature was removed from the standard IMIO in-memory + image header. (3/31) + +dev/pix.imh +dev/pix.pix +dev/wpix.imh + Regenerated using the V2 image format. (3/31) + +lib/imio.h +sys/imio/immapz.x +sys/imio/immaky.x +unix/hlib/zzsetenv.def +unix/hlib/login.cl + Increased the default size of the user area (min_lenuserarea) to + 64000 (about 800 80 char cards). There was some ambiguity about + units for min_lenuserarea; it should be consistently chars now. + Also increased the "padding" added to the header when creating a + new copy of an existing image which has a large header. (4/01) + +sys/imio/immaky.x + When the header of an old image is copied during an open-new-copy, + IMIO now recomputes the length of the user area of the input header. + Formerly if the header had grown since the image was opened, the + added data could be lost in a subsquent new-copy operation. (4/01) + +sys/etc/oscmd.x + Changed an fclobber(outfile) to fclobber(errfile). (4/02) + +sys/imfort/bfio.x + The little Fortran-callable file i/o package BFIO used in IMFORT + was enhanced to support writing and reading of fractional file blocks + so that files can be any size. The default random and sequential + buffer sizes were increased. In addition to the old random access + i/o routines bfread/bfwrite there are now sequential i/o routines + bfseek/bfrseq/bfwseq. (4/02) + +sys/imfort/mkpkg +sys/imfort/imfort.h +sys/imfort/imhv1.h + +sys/imfort/imhv2.h + +sys/imfort/oif.h +sys/imfort/imcrex.x +sys/imfort/imfgpfn.x +sys/imfort/imfupdhdr.x +sys/imfort/imgl1r.x +sys/imfort/imgl1s.x +sys/imfort/imgl2r.x +sys/imfort/imgl2s.x +sys/imfort/imgl3r.x +sys/imfort/imgl3s.x +sys/imfort/imgs1r.x +sys/imfort/imgs1s.x +sys/imfort/imgs2r.x +sys/imfort/imgs2s.x +sys/imfort/imgs3r.x +sys/imfort/imgs3s.x +sys/imfort/imopnx.x +sys/imfort/impl1r.x +sys/imfort/impl1s.x +sys/imfort/impl2r.x +sys/imfort/impl2s.x +sys/imfort/impl3r.x +sys/imfort/impl3s.x +sys/imfort/imps1r.x +sys/imfort/imps1s.x +sys/imfort/imps2r.x +sys/imfort/imps2s.x +sys/imfort/imps3r.x +sys/imfort/imps3s.x +sys/imfort/imrdhdr.x + +sys/imfort/imswap.x + +sys/imfort/imwpix.x + +sys/imfort/imwrhdr.x + + 1. IMFORT was brought up to date with IMIO to read and write the new + version 2 ".imh" images. As with IMIO, the old V1 format is still + supported but new images are written using the new machine independent + V2 format. + 2. Image headers can now be any size (the old IMFORT had a very + strict limit on the image header size). Since BFIO now writes partial + blocks, headers are no longer blocked out to 32768 bytes. + 3. "min_lenuserarea" is now supported as for IMIO (since IMFORT is + host level it must be defined in the host environment). The builtin + default header buffer is 64000 chars, which is about 800 card images. + (4/02) + +sys/imfort/mii.x + + A version of the MII routines mii{read,write}[silrc] modified to + use BFIO was added to IMFORT. These are used to read and write the + machine independent headers. (4/02) + +dev/hosts + Aliased 'kf' for kingfisher at Al Fowler's request (4/3 MJF) + +lib/qpioset.h +lib/syserrmsg +sys/qpoe/qpio.h +sys/qpoe/qpoe.h +sys/qpoe/qpiogetev.x +sys/qpoe/qpiogetfil.x +sys/qpoe/qpiomkidx.x +sys/qpoe/qpioopen.x +sys/qpoe/qpioparse.x +sys/qpoe/qpiorpix.gx +sys/qpoe/qpioseti.x +sys/qpoe/qpiostati.x +sys/qpoe/qpiosync.x + QPOE was modified to allow event coordinate (X,Y) key fields to be + of type int as well as short. All event handling code will now + accept either type. Keys may be specified using "i" as the field + type as well as "s", e.g. "key=(i10,s14)". X and Y do not have to + be the same type. There should be no significant CPU runtime + penalty, although obviously events with integer coordinate fields + will mean larger event files (file i/o times will be affected + accordingly). (4/03) + +lib/qpioset.h +lib/qpset.h +sys/qpoe/QPOE.hlp +sys/qpoe/README +sys/qpoe/qpcopyf.x +sys/qpoe/qpio.h +sys/qpoe/qpiogetfil.x +sys/qpoe/qpiolwcs.x +sys/qpoe/qpioopen.x +sys/qpoe/qpioparse.x +sys/qpoe/qpioseti.x +sys/qpoe/qpiostati.x +sys/qpoe/qpmacro.x +sys/qpoe/qpoe.h +sys/qpoe/qpopen.x +sys/qpoe/qpqueryf.x +sys/qpoe/qpseti.x +sys/qpoe/qpstati.x +sys/qpoe/zzdebug.x + Added support for separate X and Y blocking factors. The "block" + parameter is still recognized as before and will set both the X and + Y blocking factors, or "xblock" and "yblock" can be used to set only + one or the other. All occurrences have been updated, including + expressions, the QPDEFS environment, and qp_set qpio_set. (4/04) + +sys/qpoe/qpiorpix.gx + [INTERFACE CHANGE] + The calling sequence for qpio_readpix was modified to replace the + "block" argument by the two arguments xblock and yblock. A scan + indicates that none of the layered packages we have installed at + NOAO (including xray) currently uses this routine. (4/04) + +sys/plio/plrio.x + The plrio package provides an efficient lookup-table-based means of + randomly sampling 2D pixel masks. The code which recursively divides + a region into 4 quadrants could fail if the region being subdivided + was 1 pixel wide in either axis. If this happens 2 of the "quadrants" + will be valid and 2 will be degenerate. Added a test to detect and + discard these degenerate subregions. (4/04) + +sys/plio/plsectne.x +sys/plio/plsectnc.x + Both of these routines had a bug that could prevent them from + examining the full region requested (the routines check for section + not empty and section not constant). Line lists are segmented in + segments of at most I_DATAMAX (4095) pixels. If the mask is large + and has large regions of constant value, the list will consist of + successive segments all at the same value. The routines were only + checking the first such segment. The corrected code reads successive + segments until all the pixels in the region have been examined. (4/04) + +sys/plio/zzdebug.x + Fixed a couple of bugs and added several new routines to test the + above fixes. SECNE and SECNC test pl_sectnotempty and pl_sectnotconst. + RIO tests plrio random mask access. INVERT inverts a mask. (4/04) + +sys/imio/implhdr.x + These routines, which copy an image header to and from an encoded title + string in a PLIO save file, were modified to save the ctime, mtime, + limtime, minpixval, and maxpixval static fields of the image header + in addition to the title string. (4/04) + +sys/qpoe/qpexeval.x + The value of "pass" was not being initialized before starting + subprogram execution when evaluating a complex LUT bin. Added the + initialization and also some comments giving an overview of how the + evaluation is performed (since it took me several hours to figure + this out again). (4/04) + +sys/imio/iki/qpf/qpfcopypar.x +sys/imio/iki/qpf/zfioqp.x +sys/imio/iki/qpf/qpfopen.x +sys/imio/iki/qpf/qpf.h + Modified to support separate x and y blocking factors. (4/05) + +sys/plio/plupdate.x + This routine contains code which collapses successive mask lines + in Y to a single encoded mask line if the mask lines are equal, + thereby compressing the encoded mask in Y. The encoded mask lines + are encoded in short integer arrays and a multiply referenced + line has a reference count which is stored in a short integer field. + The code was modified to stop when this counter reaches MAX_SHORT, + adding a new line to the encoded mask and starting over. Combined + with the X segmentation of lines into blocks of at most 4095 pixels, + this should allow masks to be nearly any size despite the use of + short integers for the encoding. (4/05) + +sys/qpoe/qpiolwcs.x + Modified the LTV_2 term of the logical transformation to set the + fractional pixel zero point resulting from blocking the input data. + If for example 2 input pixels map to 1 on output, the range of the + output pixel (e.g. 0.5 to 1.5) maps to the range covered by the two + input pixels (e.g. 0.5 to 2.5), and the center of the output pixel + (e.g. x = 1.0) maps to the center of the range spanned by the input + pixels (e.g. 1.5). For 3 to 1, 1.0 maps back to 2.0 in the input, + for 4 to 1, 1.0 maps back to 2.5, and so on as (block+1)/2. (4/05) + +sys/ki/kfmkcp.x +sys/ki/kfrnam.x + These routines use a locally dimensioned buffer which was causing + filenames to be truncated at 128 characters. Increased the file + length limit to 256. If both files are remote the sum of the two + file lengths cannot exceed 256. (4/06) + +unix/boot/spp/xc.c + The XC compiler was modified to improve support for multi-language + and host software development. These changes should be transparent + and should not affect conventional IRAF softwrae development. + + 1. Various buffer sizes were increased. + 2. The environment variables XC-CC, XC-F77, XC-LINKER can now be + specified to override the builtin default program name strings. + + 3. New command line flags: + -D<str> Pass -D<str> to the host compiler (does a #define). + -I<dir> Pass -I<dir> to the host compiler; for includes. + The directory name can be an IRAF VFN. + -Inolibc Disables -Ihlib$libc, which is the default. Use if + you want to use the host rather than LIBC <stdio.h>. + -L<dir> Can be used to specify a directory to be searched + for library files. + -H This is used like -h to link a host program, but + unlike -h it causes the main IRAF libraries to be + searched. + -V Print the XC version number. + + 4. XC now reads the "pkglibs" environment variable after processing + all package includes, and converts this into a list of -I<dir> flags + which are passed to the host compilers. This allows host include + files to be placed in package libraries. As noted above, hlib$libc + is automatically included unless the -Inolibc switch is specified. + + Note that -/foo can still be used to pass "-foo" to the host + compiler. (4/07) + +unix/boot/bootlib/envinit.c + "loadpkgenv" is called by HSI programs like XC and MKPKG when a + package environment is loaded (-p pkname). loadpkgenv was modified + to allow it to be called as loadpkgenv(NULL) or loadpkgenv("iraf"). + This mode causes the package environment for the core IRAF system to + be loaded. This was done formerly as well, but only if a -p switch + was given causing loadpkgenv to be called (in other words the core + IRAF package environment was not being fully loaded consistently). + (4/07) + +unix/hlib/zzsetenv.def + Added a line "set pkglibs = hlib$libc/" to zzsetenv.def. This defines + hlib$libc as a default library directory to be searched (for C header + files) when compiling. (4/07) + +unix/hlib/libc/libc.h +unix/hlib/libc/setjmp.h +unix/hlib/libc/spp.h +unix/hlib/libc/stdio.h +unix/hlib/libc/varargs.h +unix/hlib/mkpkg.sf.SSUN + Various changes to better support host or host-like compilation. + + 1. libc.h will now include <spp.h> if it is not already included. + This is disabled in an old style compilation using import_spp. + libc.h is #ifdefed to not load if it has already been loaded. + + 2. setjmp.h autoloads <libc.h> and <knames.h> if not referenced in + import defines. + + 3. spp.h if #ifdefed to not load if already loaded. Various + definitions were #ifdefed to be skipped if already defined, e.g. + stuff like min and max. A define for abs was added. + + 4. stdio.h will automatically load <libc.h> (if not imported etc.). + Since libc.h autoloads spp.h this means that C files which include + <stdio.h> from LIBC will automatically load spp.h and libc.h; these + contain the main LIBC definitions and often used IRAF defines such + as OK, ERR, INDEF, NEW_FILE, SZ_FNAME, etc. etc. A standard Unix + C source file which includes <stdio.h>, if compiled with XC or with + -I$hlib/libc will automatically be compiled using LIBC and will be + usable in an IRAF program. + + 5. varargs.h now includes /usr/include/varargs.h explicitly instead + of <varargs.h>, which causes an infinite preprocessor include loop. + On SunOS systems this causes a compiler warning message so the contents + of the SunOS varargs.h are included instead. For Solaris mkpkg.sf.SSUN + is used to employ a flag -erroff=XXX to disable the warning. (4/07) + +unix/hlib/mkpkg.inc + Added -DSUNOS to the XFLAGS for sparc, -DSYSV -DSOLARIS for Solaris. + (4/07) + +--------------------------------- +V2.11 beta-1 released. (4/08) + +pkg/images/tv/imexamine/iejimexam.x +pkg/images/tv/imexamine/iecolon.x +pkg/images/tv/kimexam.par + +pkg/images/tv/doc/imexamine.hlp +pkg/images/tv/tv.cl + Added a pset for the 'k' key rather than sharing with the 'j' key. This + was confusing to users since it was the only key without it's own pset. + Also there may be some reason to have the fitting parameters be + different along lines and columns. (4/11, FV) + +pkg/images/imcoords/doc/cctran.hlp + Fixed a bug in the cctran help page. (4/15, LED) + +pkg/images/tv/tvmark/mkmark.x + Made sure that the object label was initialized to "" in the call + to the mk_onemark procedure inside the a keystroke command. The lack + of initialization was causing tvmark to fail with a segmentation + violation when the coordinates file did not exist at task startup time, + and the label parameter was set to "yes". (4/17, LED) + +unix/hlib/libc/spp.h + Deleted the definition of abs(), which conflicts with the stdlib + definition. (4/22) + +unix/boot/spp/xc.c + There was a problem with the -h flag: due to the recent changes it + was referencing the VOS libraries (and linking shared by default). + This would cause IMFORT programs to fail to link. (4/23) + +pkg/images/imutil/src/imcopy.x + Changed the imcopy task so that it ignores the output image section + if the input and output root names are the same, making its behavior + consistent with other images package tasks which can overwrite the + input image. (4/24/97, Davis) + + +pkg/images/imgeom/rotate.cl + The nlines parameter was called nrows by mistake in the rotate + script calling sequence. This did not affect the execution of the + task but has been fixed anyway. (4/26/97, Davis) + +sys/ki/kfrnam.x +sys/ki/kfmkcp.x + Fixed a bug in calculating the offset to the second filename. (4/27) + +unix/boot/rtar.c +unix/boot/wtar.c + Fixed a bug where rtar could in some cases confuse tar file directory + entries with links (both have a nonzero linkflag). Also removed the + #ifdef BSDUNIX stuff relating to symbolic links, as I don't know any + modern systems that don't support symlink/lstat. Typing -v now + implies -t for both programs, as with unix tar. (4/29) + +dev/hosts + Added a new sparc machine surya. (4/29/97 MJF) + +pkg/images/immatch/src/geometry/t_geotran.x +pkg/images/immatch/src/geometry/geotran.x + Fixed various bugs triggered by the case where the user sets xmin, + xmax, ymin, or ymax, explicitly, and xmin > xmax or ymin > ymax. + Improved the precision of the flux conservation algorithm at the + same time. (4/30/97 LED) + +pkg/cl/cl.par +unix/hlib/login.cl + Updated the version parameter for V2.11. (4/29) + +pkg/images/tv/display/zscale.x +pkg/images/tv/display/dspmmap.x + 1. Now works with higher dimensional images (displays the first band) + and with image sections. + 2. Now ignores error when the image has an unknown WCS type. The + WCS is mapped to determine the physical coordinate transformation + for use with masks but this failed when someone imported an image + with the CAR projection type. (4/30 FV) + +lib/math/gsurfit.h +pkg/math/gsurfit/*.gx +pkg/math/gsurfit/*.x +pkg/math/gsurfit/doc/gsinit.hlp + Replaced the gsurfit package with a new version which support a + "half" cross terms option useful in computing plate solutions. + There are no package interface changes, old code should compile, + link, and run without changes, and old database can still be + read. Code changes are necessary to make use of the new feature. + (4/30/97 LED) + +pkg/images/immatch/geomap.par +pkg/images/immatch/skymap.cl +pkg/images/immatch/wcsmap.cl +pkg/images/immatch/sregister.cl +pkg/images/immatch/wregister.cl +pkg/images/immatch/doc/geomap.hlp +pkg/images/immatch/doc/skymap.hlp +pkg/images/immatch/doc/wcsmap.hlp +pkg/images/immatch/doc/wregister.hlp +pkg/images/immatch/doc/sregister.hlp +pkg/images/immatch/src/geometry/geoxytran.gx +pkg/images/immatch/src/geometry/geoxytran.x +pkg/images/immatch/src/geometry/t_geomap.gx +pkg/images/immatch/src/geometry/t_geomap.x +pkg/images/immatch/src/geometry/t_geotran.x +pkg/images/immatch/src/psfmatch/rgpbckgrd.x +pkg/images/immatch/src/xregister/rgxbckgrd.x +pkg/images/imcoords/ccmap.par +pkg/images/imcoords/doc/ccmap.hlp +pkg/images/imcoords/src/t_ccmap.x +pkg/images/imcoords/src/t_imcctran.x +pkg/images/lib/coomap.key +pkg/images/lib/geofit.gx +pkg/images/lib/geofit.x +pkg/images/lib/geograph.gx +pkg/images/lib/geograph.x +pkg/images/lib/geomap.h +pkg/images/lib/geomap.key +pkg/images/lib/rgtransform.x + Modifed the geomap, wcsmap, skymap, wregister, sregister, and ccmap + tasks to use the new cross terms option in the gsurfit library. + This involved changing two boolean parameters in each of the above + tasks to string parameters, making the interactive fitting software + shared by all these tasks aware of the change, and modifying the + gsinit calls to do the initialization properly. The default behavior + of all these tasks should be unchanged. (5/1/97 Davis) + +dev/graphcap + Modified the path to qsoli so that it was generic - since there is + only one graphcap file now for SunOS and Solaris there can not be + host dependent path names in this file for these two OSs. Made the + modifications on /shared on gemini and ursa and on tucana. + (5/1/97 jvb) + +unix/shlib/mkshlib.ssol (same as mkshlib.ssol-sc34) +unix/shlib/mkshlib.sos4 +unix/shlib/mkpkg + Modified the shared library build procedures for Solaris and SunOS + to work correctly regardless of the current architecture setting of + the core system. There is no reason that the architecture of the + core system should have to be set to the architecture of the shared + image being built, since the shared image depends only upon the + contents of the BIN directory for the target architecture. This + changes allows the shared library to be rebuilt regardless of the + current architecture of the core system. (5/05) + +dev/hosts + Made the following changes at Nigel's request: + + o added: eagle (new SWN), standard SunOS + o removed: gll1, hedgehog, sandalwood, solara + o change from SunOS to Solaris: enzo, humu, tofu + o also dyevushka is now a Solaris 2.5.1 Sun Ultra + + (5/9/97 MJF) + +pkg/images/tv/display/t_display.x + Fixed a typo in the mode used to map the display frame. When erase + is set the image is now mapped in WRITE_ONLY mode, otherwise it is + mapped READ_WRITE. This is how it previously worked. (5/14/97 MJF) + +unix/boot/spp/xc.c + The -h and -H switches, used to link a host task, now imply -Inolibc + as well. It doesn't make any sense to use IRAF LIBC if a host + program is being compiled and linked. (5/20) + +pkg/images/x_images.x +pkg/images/imcoords/starfind.par +pkg/images/imcoords/doc/starfind.hlp +pkg/images/imcoords/src/starfind.h +pkg/images/imcoords/src/t_starfind.x +pkg/images/imcoords/src/sftools.x +pkg/images/imcoords/src/sfconvolve.x +pkg/images/imcoords/src/sffind.x + The starfind task has been added to the images.imcoords package. + (5/22 LED) + +sys/imio/iki/oif/oifrdhdr.x + Added a check to omit a read if the size of the user area is zero. + This problem showed up as a failure to open imfort images produced + with IRAF V2.10. Imfort images often have no extra header keywords. + (6/01) + +sys/qpoe/qpiorpix.gx +sys/qpoe/qpiogetev.x +sys/qpoe/qpiomkidx.x + Fixed a mistyped pointer problem affecting integer event coordinate + keys. QPOE maintains event pointers internally as pointers to + short, to optimize event filtering where the event extraction fields + are type short. The recently added code to support integer + coordinates was correctly computing an integer offset for the field, + but the short int pointer to the event struct was still being used. + (6/02) + +sys/qpoe/qpiogetfil.x + Changed a few "pargc('s')" type calls to "pargi('s')" ('s' is an + integer not a character). (6/02) + +unix/as.sparc/bytmov.c +unix/as.sparc/amovs.c +unix/as.sparc/amovr.c +unix/as.sparc/amovl.c +unix/as.sparc/amovi.c +unix/as.sparc/amovd.c +unix/as.sparc/amovc.c + Added a check for a no-op copy where the input and output arrays + are the same; the copy operation is skipped in this case. The VOPS + version has always done this, but the optimized version in AS does + not, possibly because the first version of this used a bcopy() which + already had this feature. (6/03) + +unix/as.ssol/bytmov.c +unix/as.ssol/amovs.c +unix/as.ssol/amovr.c +unix/as.ssol/amovl.c +unix/as.ssol/amovi.c +unix/as.ssol/amovd.c +unix/as.ssol/amovc.c + Made the same change for the Solaris versions. This will need to + be propagated to the AS for the other platforms as well. (6/03) + +sys/fmtio/ctod.x + Changed the generic MAX_EXPONENT to MAX_EXPONENTD. (6/05) + +sys/fmtio/ctor.x + Since the exponent for double can now be larger than a real variable + can support, added a log10(x) > MAX_EXPONENTR check before converting + the value returned by ctod to a real. (6/05) + +dev/graphcap + Installed graphcap support for the STSDAS Postscript graphics kernel. + The actual kernel is still installed in STSDAS and its behavior is + unchanged. (6/06) + +sys/osb/ieee.gx +unix/as.sparc/ieee.gx +unix/as.ssol/ieee.gx + 1. Added a new interface routine ieegmap, used to query the current + input and output NaN-mapping flags. + 2. Changed the name of the old "ieemap" to "ieesmap" for consistency + with ieegmap. The old ieemap is retained for backwards compatibility. + + 3. [INTERFACE CHANGE] ieesnan no longer has the side affect of + enabling mapping by calling ieemap. (6/06) + + Note that all of these routines have both double and real versions + and that mapping must be handled separately for the two types. + (Although we use generic language above, there is no ieesmap, you + really have ieesmapr and ieesmapd). For example, enabling input + mapping for real data will not enable it for double as well. + +pkg/dataio/doc/export.hlp +pkg/dataio/export/excmap.x +pkg/dataio/export/cmaps.inc + Added the 'overlay' cmap as a builtin cmap. (6/6/97) + +pkg/dataio/export/expreproc.x + Removed a call to scale the colormaps when using the default values. + Cmaps are now only scaled when a brightness/contrast value is set in + the setcmap() function. (6/6/97 MJF) + +pkg/dataio/export/bltins/exgif.x + Fixed a small error in the output of GIF files causing some display + programs to complain. GIF images which would now be an odd number of + bytes have an extra trailing ';' delimiter. This should be harmless + as all processing is supposed to stop once that char is found. (6/6/97 MJF) + +pkg/dataio/rfits.par +pkg/dataio/wfits.par +pkg/dataio/doc/rfits.hlp +pkg/dataio/doc/wfits.hlp +pkg/dataio/fits/fits_cards.x +pkg/dataio/fits/fits_files.x +pkg/dataio/fits/fits_params.x +pkg/dataio/fits/fits_read.x +pkg/dataio/fits/fits_rheader.x +pkg/dataio/fits/fits_rimage.x +pkg/dataio/fits/fits_rpixels.x +pkg/dataio/fits/fits_wheader.x +pkg/dataio/fits/fits_wimage.x +pkg/dataio/fits/fits_wpixels.x +pkg/dataio/fits/fits_write.x +pkg/dataio/fits/mkpkg +pkg/dataio/fits/rfits.com +pkg/dataio/fits/rfits.h +pkg/dataio/fits/t_rfits.x +pkg/dataio/fits/t_wfits.x +pkg/dataio/fits/wfits.com +pkg/dataio/fits/wfits.h + Installed new versions of rfits and wfits. The new rfits and wfits + include support for: 1) reading and writing multi-extension fits files, + 2) reading and writing global headers, 3)and reading and writing ushort images. (6/9/97 LED) + +pkg/images/immatch/wcsxymatch.par +pkg/images/immatch/wcsmap.cl +pkg/images/immatch/wregister.cl +pkg/images/immatch/doc/wcsxymatch.hlp +pkg/images/immatch/doc/wcsmap.hlp +pkg/images/immatch/doc/wregister.hlp +pkg/images/immatch/src/wcsmatch/t_wcsxymatch.hlp + Added the transpose parameter to the wcsxymatch, wcsmap, and wregister + task to permit users to force an image transpose in cases where the + image wcs does not contain enough information, e.g. axtype is undefined + or set to the same units. (6/10/97, Davis) + +pkg/images/tv/imexamine/stfmeasure.x + 1. The background is now set to zero if there are no background points. + 2. Fixed an error recovery bug (attempting to free a pointer which + was not set). + (6/11/97, Valdes) + +pkg/images/tv/imexamine/ierimexam.x + The background widths needed to be passed to the PSF measuring routines + even if the background is turned off for the fitting in the 'a' and 'r' + keys. (6/11/97, Valdes) + +dev/hosts + Changed the following DMAC machines: + - anasazi, sol, mimbres, prometheus are now solaris + - changed path for dyevushka and humu + (6/15/97 MJF) + +pkg/images/lib/skywcs.x + Modified the code to initialize the physical and logical axis maps + to 1 and 2 respectively. (6/16/97) + +pkg/dataio/imtext/t_wtextimage.x + Cleared the format arrays prior to using them so old format strings + are overwritten. (6/17/97 MJF) + +pkg/dataio/fits/fits_read.x + Changed the code to add the extension number (as intended) not + the sequence number to the output file name if appropriate. + Removed some extraneous error messages from the output. (6/18/97 LED) + +pkg/dataio/fits/fits_write.x + The IRAFNAME keyword was not being initialized properly for the + global headers resulting in gargage being written into this + variable. (6/18/97 LED) + +unix/hlib/irafuser.csh + Added the flag -Inolibc to HSI_XF. The HSI C files are host level + and do not use libc. (6/17) + +unix/hlib/libc/knames.h +unix/os/zcall.c +unix/os/zfunc.c + Added zcall and zfunc routines for calls with ten arguments. The + new functions are called zfunca,zcalla (A is hex for 10; hex is used + to avoid 7 char names in kernel routines). (6/17) + +lib/syserr.h +lib/syserrmsg + Installed system error messages for the FITS kernel. (6/17) + +pkg/images/imutil/imheader.par +pkg/images/imutil/src/imheader.x +pkg/images/imutil/src/mkpkg + 1. Typing "imhead" with no arguments now lists the images in the + current directory (like "ls"). + 2. A new parameter "imlist" was added to support the above. + 3. Imheader now left-justifies text to avoid truncating long cards. + 4. The method used to test for a pixel file was changed to avoid + any pixel i/o. + +sys/imio/iki/fxf/ + Installed the new FITS image kernel. (6/16) + +sys/imio/iki/iki.com +sys/imio/iki/iki.h +sys/imio/iki/ikiaccess.x +sys/imio/iki/ikiclose.x +sys/imio/iki/ikicopy.x +sys/imio/iki/ikidelete.x +sys/imio/iki/ikiextn.x + +sys/imio/iki/ikiinit.x +sys/imio/iki/ikildd.x +sys/imio/iki/ikimkfn.x +sys/imio/iki/ikiopen.x +sys/imio/iki/ikiopix.x +sys/imio/iki/ikiparse.x +sys/imio/iki/ikirename.x +sys/imio/iki/ikiupdhdr.x +sys/imio/iki/mkpkg + 1. "imtype" now has a syntax such as "imtype=oif,noinherit" or + "imtype=imh", "imtype=fits". The default image type can be + specified either by any legal image extension or by giving the + internal kernel name (oif, fxf, plf, qpf, stf). If "inherit" is + enabled then the image type will be preserved in a new-copy + operation, as in pre-V2.11 versions of IRAF. The default in V2.11 + is OIF images with no inherit. No inherit means new images always + are of type imtype. + + 2. A new environment variable "imextn" specifies the mapping of + image file extensions to image types. For example, + imtextn = "oif:imh fxf:fits,fit plf:pl qpf:qp stf:hhh,??h" + Kernel names must be used here. For each kernel the list of valid + extensions or extension patterns is given. The first extension for + each type is the default extension when creating new images of that + type. + + 3. A "kernel" argument was added to many of the IKI routines. This + change was propagated to all the image kernels. + + 4. The fits kernel (fxf) was added to ikiinit. A call to + iki_extninit was added to ikiinit. imtype/imextn are only read + once, when the first image is accessed. A flpr is needed to use + the new values if the variables are changed at runtime after images + have been accessed. + + 5. The extension processing code is in the new file ikiextn. + (6/16) + +sys/imio/iki/oif/mkpkg +sys/imio/iki/oif/oifaccess.x +sys/imio/iki/oif/oifcopy.x +sys/imio/iki/oif/oifdelete.x +sys/imio/iki/oif/oifopen.x +sys/imio/iki/oif/oifrename.x +sys/imio/iki/plf/plfaccess.x +sys/imio/iki/plf/plfcopy.x +sys/imio/iki/plf/plfdelete.x +sys/imio/iki/plf/plfopen.x +sys/imio/iki/plf/plfrename.x +sys/imio/iki/qpf/qpfaccess.x +sys/imio/iki/qpf/qpfcopy.x +sys/imio/iki/qpf/qpfdelete.x +sys/imio/iki/qpf/qpfopen.x +sys/imio/iki/qpf/qpfrename.x +sys/imio/iki/stf/mkpkg +sys/imio/iki/stf/stfaccess.x +sys/imio/iki/stf/stfcopy.x +sys/imio/iki/stf/stfdelete.x +sys/imio/iki/stf/stfhextn.x +sys/imio/iki/stf/stfopen.x +sys/imio/iki/stf/stfrename.x + Numerous changes related to adding imtype/imextn, and adding a + kernel argument to the IKI driver entry points. (6/16) + +sys/imio/mkpkg +sys/imio/imaccess.x +sys/imio/imgimage.x +sys/imio/imgnln.x +sys/imio/imparse.x +sys/imio/impnln.x +sys/imio/iki/stf/stfopen.x + If the image number in a multi-extension group is not given this is + indicated by a value of -1. Formerly 0 was used. The listed + routines had to be changed to implement this. (6/16) + +sys/imio/imstati.x + An imstati on IM_PIXFD will now attempt to open the pixel file if + it is not already open. This is used by the revised IMHEADER task + to test for a pixel file. (6/17) + +--------------------------------- +V2.11 beta-2 released. (6/18) + +pkg/dataio/fits/fits_read.x + Fixed an error in the call to pl_gsize (output variable set to + constant) that was causing a segvio on Solaris. (6/19 LED) + +pkg/images/imutil/src/imheader.x +sys/imio/imstati.x + Removed the code from imstati to open the pixel file in an IM_PIXFD + query; ideally imstat should be purely an information service with + no action side effects. Instead, added an imopsf call in imheader + to test if the pixel file exists (this is done only if IM_PIXFD=NULL). + imopsf was not really intended to be in the public interface of IMIO, + but we can live with this for the system imheader task. (6/19) + +sys/imio/iki/fxf/fxfopen.x + Fixed a bug that would affect opening of simple (not multi-extension) + FITS files without specifying an extension. (6/19) + +sys/imio/iki/oif/oifopen.x +sys/imio/iki/plf/plfopen.x +sys/imio/iki/qpf/qpfopen.x + These kernels were updated to check the image extension index and + abort if an illegal extension is referenced. For a simple file with + one image the only extension permitted is [1] (or -1 which is what + the kernel gets if no extension is specified). Trying to open [0] + or [2] or higher is an error. This is necessary to provide a kernel + independent behavior if other kernels may support multiple extensions. + + There are still two unresolved issues here. The first is that STF + was not also updated, so its behavior is inconsistent compared to + the other kernels ([0] or [1] or not given will all return the first + image). This could not be modified due to the risk to STSDAS and + the tight schedule we have for V2.11. The second problem is that + the FITS kernel used in the simplest manner will produce a + multi-extension file with [0] as the first image. In this mode the + FITS kernel has images starting at [0] whereas the first image is + [1] for the other kernels. This is less of a problem if the PHU of + a FITS MEF file is a dataless file header, in which case the first + image is [1], and [0] is the file header, not an image. But there + is an inconsistency. Perhaps the default behavior of the FITS + kernel should not so easily create a multi-extension file with a PDU + instead of a dataless PHU. We might want to change the default + behavior to add a file PHU when a multiextension FITS file is + created, or add a kernel switch to force creation of a PHU. Simple + FITS files would remain a simple PDU with no extensions. Currently + the only way to get a PHU MEF file with the FITS kernel is to use + special facilities to write a dataless PHU before appending a data + image. (6/19) + +sys/ki/ki.h + Increased the max nodes from 256 to 320. This code needs to be + rewritten to use a dynamic table to eliminate this upper limit, + and improve efficiency. (6/19) + +pkg/images/imutil/doc/imheader.hlp + Modifed the imheader help page to include a description of the + new imlist parameter. (6/20 LED) + +pkg/dataio/wfits.par +pkg/dataio/fits/t_wfits.x +pkg/dataio/help/wfits.hlp + Added the parameter fextn to the wfits task. Wfits will append the + current value of fextn to any output disk files so that they + can be read with the fits kernel. The default value of fextn is "fits". + (6/20 LED) + +pkg/dataio/fits/t_wfits.x + Added a check to wfits so that it does not append a ".fextn" to + an output file name which already ends in ".fextn". + (6/21 LED) + +unix/boot/spp/xc.c + Modified the "isv3" code to be more flexible about the configuration + of the host compiler. (6/22) + +sys/qpoe/qpex.h + Increased DEF_PROGBUFLEN and DEF_DATABUFLEN to 65536. (6/22) + +sys/imio/iki/oif/oifopen.x +sys/imio/iki/plf/plfopen.x +sys/imio/iki/stf/stfopen.x + Added support for "imclobber" to these kernels (images can be + overwritten if imclobber=yes). The FITS kernel (fxf) already had + imclobber implemented. QPF is read-only so it is not an issue. (6/22) + +sys/mwcs/mwrotate.x + The sign of the x,y center of rotation was wrong in a call to + mw_translated. (6/22) + +sys/mwcs/mkpkg +sys/mwcs/mwcs.h +sys/mwcs/iwewcs.x +sys/mwcs/iwrfits.x +sys/mwcs/mwsaveim.x +sys/mwcs/wfait.x +sys/mwcs/wfcar.x +sys/mwcs/wfcsc.x +sys/mwcs/wfdecaxis.x +sys/mwcs/wfgls.x +sys/mwcs/wfinit.x +sys/mwcs/wfmer.x +sys/mwcs/wfmol.x +sys/mwcs/wfpar.x +sys/mwcs/wfpco.x +sys/mwcs/wfqsc.x +sys/mwcs/wfstg.x +sys/mwcs/wftsc.x +sys/mwcs/wfzea.x + 1. Added support for galactic, ecliptic, and super-galactic coordinates + to MWCS. + 2. Added the STG, ZEA, CAR, MER, PCO, PAR, AIT, MOL, CSC, QSC, TSC + projection functions to MWCS. These functions do not require any + projection parameters. We are using the G&C defaults for LONGPOLE + and LATPOLE. The CUBEFACE parameter in the COBE CSC, QSC, and TSC + projections is ignored for now since it is not required to evaluate + the functions. (6/22) + +unix/hlib/math.h + Added explicitly DOUBLE versions of the math constants. (6/22) + +pkg/images/imcoords/doc/imcctran.hlp + Modified the imcctran help page to reflect the 2.11 mwcs changes, + e.g. support for galactic, supergalactic, and ecliptic coordinates, + and the new function drivers. (6/23 LED) + +unix/boot/spp/xpp/decl.c + The line counter was not being updated in multiline declarations. + This would mess up SPP source code debugging. (6/23) + +pkg/system/rename.x +pkg/system/doc/rename.hlp + 1. The field=extn option can now add file extensions where none + existed before, or remove them. + 2. The filename field editing capability now works for single file + renames as well as file lists. (6/23) + +sys/imio/iki/ikiopen.x + Add an errchk for zcalla. Doesn't appear to matter in this case, + but there should be one as otherwise assumptions are made about the + value of the status argument when an error abort occurs. (6/23) + +sys/imio/iki/stf/stfopen.x +sys/imio/iki/plf/plfopen.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfksection.x +sys/imio/iki/oif/oifopen.x +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfupdhdr.x + 1. Fixed a bug in fxfopen that was causing PHU inheritance to fail. + 2. Tweaked imclobber handling in all kernels. Fixed a bug related + to dev$null images in oif and plf. + 3. Some minor coding style changes, spelling errors. (6/23) + +pkg/images/x_images.x +pkg/images/imcoords/imcoords.par +pkg/images/x_images.x +pkg/images/imcoords/imcoords.cl +pkg/images/imcoords/imcoords.men +pkg/images/imcoords/imcoords.hd +pkg/images/imcoords/ccfind.par +pkg/images/imcoords/doc/ccfind.hlp +pkg/images/imcoords/src/t_ccfind.x +pkg/images/imcoords/src/mkpkg + Installed the new ccfind task in the images.imcoords package. + (6/24 LED) + +sys/imio/iki/fxf/fxfopen.x + More fixes to the fkinit/inheritance logic in the FITS kernel. (6/24) + +sys/imio/iki/ikiextn.x + 1. Modified the iki_extninit code to preserve the default extensions + for kernels not specified in a user defined imextn string. If the + user specifies extensions for a given kernel these however override + the builtin defaults (note though that not all kernels permit + arbitrary file extensions - fxf and stf are the main ones that do). + + 2. Added a new routine iki_debug. The init code was modified to check + for an environment variable "ikidebug". If this is defined and has + a yes value the IKI data structures are dumped at init time, allowing + the list of installed kernels and the mapping of extensions to kernels + to be reviewed. (6/24) + +sys/imio/iki/fxf/fxfrename.x +sys/imio/iki/fxf/fxfdelete.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxfrfits.x + We had a problem with "rfits make-" failing with imtype=fits. This + opens dev$null as the image and a kernel must be able to deal with + this odd situation. There was a problem with the internal header + cache code as some of the code was searching the cache, but since we + were opening a new image the cache had not been initialized (it is + initialized in rfitshdr). Added a new routine iki_init in + fxfopen.x, and calls to this in all the external entry points for + the fits kernel. On the first call after a process startup, this + initializes the cache to empty and sets rf_cachesize=0 (the cache is + subquently reinitialized by rfitshdr). A number of instances of + the construct "do i = ... max(1,rf_cachesize)" were changed to + "do i = ... rf_cachesize" as otherwise the loop does not notice + that the cache is disabled. (6/25) + +unix/boot/spp/xpp/xppcode.c + Increased the output code buffer from 50000 to 131072. (6/25) + +dev/graphcap + The pen width parameter PW for sgi_apl was changed from 2.4 to 2.3. + This was fine tuning for the SGIKERN font changes below. (6/25) + +sys/gio/sgikern/mkpkg +sys/gio/sgikern/sgifont.x +sys/gio/sgikern/sgitx.x +sys/gio/sgikern/greek.com + +sys/gio/sgikern/font.com +sys/gio/sgikern/sgidrawch.x + The SGI graphics kernel was upgraded with a better roman font, and a + new greek font was added. Aside from the above minor change to + graphcap this should be transparent to anything outside sgikern. (6/25) + +unix/hlib/zzsetenv.def + Added an "imextn" entry to the default IRAF environment so that the + user can do a "show imextn" to see the current mappings of image + extensions to image kernels. (6/25) + +--------------------------------- +V2.11 Beta-2 installed on NOAO servers. (6/25) + +unix/hlib/zzsetenv.def + 1. Added "imclobber = no". + 2. Changed imtype to "oif,noinherit" to better document the new syntax. + (imtype=imh, imtype=fits etc. will still work so long as these are + valid extensions in imextn). + 3. Changed version from beta1 to beta2. (6/26) + +unix/gdev/sgidev/sgi2uapl.c +unix/gdev/sgidev/sgi2ueps.c + These routines could generate a "0 setlinewidth" in the output + postscript, which could cause a plot to abort without generating + any output. Added a simple max(1) to prevent this, without changing + the way a linewidth is scaled. (6/27) + +lib/syserr.h +lib/syserrmsg + Added a new error code SYS_IKIKSECTNS, used when a kernel section + is entered but it is invalid, e.g. because the kernel does not + support the image section syntax given. (6/28) + +sys/imio/iki/oif/oifopen.x + Now returns an error if the given kernel section is not legal. (6/28) + +sys/imio/iki/stf/stfopen.x + The imclobber stuff introduced a serious bug preventing image + sections such as "imcopy blah pix[3]" from being used to write a + multi-extension STF file (e.g. created with pix[1/4]). Modified + stfopen to permit such usage. Imclobber checking is only performed + if the whole file is affected. If an individual image is explicitly + referenced it can be overwritten and is not affected by imclobber. + (6/28) + +unix/hlib/zzsetenv.def + Set imtype back to "imh". Unfortunately we have IMRED scripts which + parse the value of imtype (an interface violation since it makes the + scripts dependent on details of the image kernels). Until these can + be fixed imtype will have to be left as it is. (6/29) + +sys/gio/sgikern/greek.com + Updated the greek fonts in the SGI kernel to a newer version. (6/29) + +pkg/images/imutil/src/imexpr.gx +pkg/images/imutil/src/imexpr.x + Fixed a bug affecting generating functions using I,J,K. (6/29) + +sys/imio/iki/fxf/fxfksection.x +sys/imio/iki/fxf/fxfopen.x + 1. Bug fix to avoid "unexpected EOF" error when reading dataless + PHU files. + 2. The extension number and extension name should now be + interchangeable in kernel sections. (6/29) + +lib/syserr.h +lib/syserrmsg + Added several new error messages for the FITS image kernel. (6/29) + +sys/mwcs/wfinit.x + Removed a bogus "msp" entry from the MWCS function table. This was + an alias for the older multispec. (6/30) + +--------------------------------- +V2.11 Public BETA release. (6/30) + +dev/hosts + Added 'sunset' to all downtown servers (7/2/97 MJF) + +dev/hosts + Changed path for 'deneb' (7/7/97 MJF) + +unix/hlib/zzsetenv.def + There was a typo (extra double quote) in the definition of imextn. + (7/24) + +pkg/images/imcoords/src/ccxytran.x +pkg/images/immatch/src/geometry/geoxytran.gx +pkg/images/immatch/src/geometry/geoxytran.x +pkg/images/immatch/src/geometry/t_geotran.x + Fixed a bug in the database reading code used by the cctran and + geoxytran tasks that was producing an "illegal xorder" message + if the x coordinate fit was linear and the y coordinate fits was + nonlinear or vice versa. (7/24/97 LED) + +pkg/images/immatch/src/xregister/rgxcorr.x + Fixed an initialization problem in the xregister task that ocurred + if: 1) the correlation parameter was set to "fourier", and, 2) one + of the correlation regions was entirely off the input image. In this + case all subsequent region shifts were being set to INDEF regardless + of whether or not the region was actually on the image. (7/25/97 LED) + +sys/libc/imaccess.x + +sys/libc/mkpkg + Added a new LIBC entry point "c_imaccess" which calls the IMIO imaccess + routine. (7/25) + +unix/hlib/libc/xnames.h + Added an entry for IMACCESS. (7/25) + +pkg/cl/unop.c +pkg/cl/param.h +pkg/cl/param.c +pkg/cl/operand.h +pkg/cl/builtin.c +pkg/cl/gram.c + Added two new intrinsic functions, "imaccess" and "defvar". imaccess + tests whether an image exists, e.g. (imaccess("dev$pix")) or + (imaccess(foo.fits[3])). defvar tests whether an environment variable + exists, e.g. (defvar("imextn")). (7/25) + +pkg/images/imcoords/doc/ccfind.hlp + Fixed a typo in the ccfind task help page. (7/28 LED) + +pkg/math/gsurfit/zzdebug.x + Added a zzdebug.x file to the gsurfit package. (7/28 LED) + +sys/imio/iki/stf/stfopen.x + Added a max(0,gr_arg) to map gr_arg values of -1 to 0 for use within + the STF kernel. (7/29) + +sys/imio/iki/stf/stfhextn.x +sys/imio/iki/fxf/fxfhextn.x + These routines will now inherit the file extension in a new-copy + operation only if inherit is enabled in "imtype". (7/29) + +sys/imio/iki/ikiextn.x + Added a new IKI extn routine iki_getpar(), used by IMIO code to + get IKI global parameters (such as inherit/defimtype). (7/29) + +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxf.h + 1. When a new FITS file is created the value of the EXTEND keyword + in the PHU is now set to F. When an extension is subsequently + added it is changed to T. + 2. A bug was fixed affecting files with many (hundreds) of extensions. + 3. A dev$null related bug was fixed (seen when displaying an image + with imtype set to fits). (7/29) + +noao/lib/mkpkg.sf + Fixed a typo in the $ifeq MACH section. (7/29) + +sys/gio/sgikern/font.com + Updated to a new version of the font file which improves the + inter-character spacing. (7/29) + +pkg/images/immatch/src/geometry/geotran.x + Some min/max statements were reordered in geo_imset to work around an + optimiser bug seen on Solaris. Normally this should have been fixed + by putting the file on the special file list, but since geotran is + very compute intensive the source file was modified instead. (7/29) + +pkg/images/imutil/src/hedit.x + Added a missing sfree() in he_deletefield(). (7/29) + +sys/imio/db/imgftype.x +sys/imfort/db/imgftype.x + Modified to check for a quoted string before checking if the keyword + is boolean (T/F). (7/29) + +--------------------------------- +V2.11 Public BETA release, patch-1. (7/29) + +pkg/images/imutil/src/imhistogram.x +pkg/plot/phistogram.x + Fixed a bug in the imhistogram and phistogram tasks that could produce + invalid floating point operation errors if the image pixel values are + outside the legal integer range. (7/31 LED) + +sys/imio/iki/fxf/fxfksection.x + There was a typo on line 177, PHULINES should have been EHULINES. + (7/31) + +pkg/dataio/fits/fits_read.x + Fixed a bug in the new global header reading code that could + result in the global image header being left in the tmp$ directory. + (8/6 LED) + +dev/emacs.ed + Fixed an ambiguity affecting MOVE_LEFT and DEL_CHAR. Added ctrl/d + as a second eof char (along with ctrl/z) as for vi.ed. (8/07) + +sys/imio/iki/fxf/fxfrfits.x + Fixed a bug which would cause unwanted blank lines to be added to a + header generated with INHERIT=T when there are blank lines near the + top of the existing extension header. (8/08) + +sys/mtio/mtrewind.x + The sequence close(mtopen()) was being used to rewind a device. + The close could fail due to an invalid file descriptor if the mtopen + failed, as when opening a device and no tape was loaded. Modified + to do the close only if the open succeeds. An attempt to rewind a + device when no tape is loaded will still fail with a "cannot open + device" message. There is no way to tell that a tape is not loaded. + (8/08) + +pkg/cl/builtin.c + [This was the solution to the so-called "imdkern" bug]. Stty has + the unusual side affect of writing to environment variables (to set + the screen size etc.). Environment variables set in the CL are + automatically passed to all connected subprocesses. This can cause + corruption of the IPC prototcol when stty is called in response to a + pagefiles() call in a running task and a connected graphics kernel + is running at the time. The safest thing is to have stty shutdown + any connected graphics kernels before executing, so a call to gflush + was added to the stty code in the CL. (8/10) + +sys/qpoe/qpaddf.x + A symbol reference (dsym) was being made before a stenter, but the + latter could cause symbol pointers to change. The code was reorganized + slightly to do the stenter before taking any symbol references. (8/10) + +sys/imio/iki/oif/oif.h +sys/imio/iki/oif/oifopen.x + The OIF kernel now recognizes an environment variable "oifversion" + which, if defined, specifies the file version for a new OIF image + (for example set oifversion = 2 produces format version 2 images). + If the variable is not defined, which is the default, the builtin + OIF default will be in effect and new-format images will be + generated. This variable is provided only for backwards + compatibility, e.g. when using V2.11 IRAF with old software which + cannot easily be updated. (8/10) + +sys/imio/iki/fxf/fxf.h +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfctype.x +sys/imio/iki/fxf/fxfksection.x + 1. A bug was fixed that would leave open file descriptors behind + when trying to open extensions beyond the EOF, e.g. when searching + for the last extension in a file. + 2. An operation such as "imcopy foo.fits[3] new.fits" would fail + with imclobber=yes if "new.fits" already existed, due to a problem + with error recovery. + 3. A new fkinit parameter "padlines" was added. Along with the + existing "ehulines" this permits control of the number of blank + lines at the end of a header (used for expansion). Whereas ehulines + defines the minimum size of an extension header when a new extension + is added, padlines defines the number of lines of padding to be + added when a EHU overflows and has to be extended. + 4. The FK code supporting FILENAME was deleted. It is difficult + for the FK to maintain this reliably (e.g. if a temp image is created + and later renamed), and it is felt that it is better to let the + application which creates FITS files control this parameter. If the + FK insists on writing it this interferes with the use of FILENAME by + the application. (8/11) + +sys/imio/iki/fxf/fxfrfits.x + A buffer was improperly dimensioned affecting the OBJECT keyword. + This could cause long image title strings to be truncated. SZ_EXTTYPE + was changed to SZ_CARD on line 708. (8/12) + +lib/prstat.h +unix/hlib/libc/prstat.h + A new process status value P_BUSY was added. (8/13) + +sys/etc/prseti.x + + A prseti routine was added to the process control interface, which + already provided a prstati. (8/13) + +sys/etc/mkpkg +sys/etc/prupdate.x + The prupdate routine, used to broadcast messages/commands to all + subprocesses (e.g. for set environment or chdir requests), was + modified to check the process status and only broadcast to processes + for which the process status is P_RUNNING. The process status for + a running process can now be set to either P_BUSY or P_RUNNING. + P_RUNNING indicates that the process is running, but is idle and + read to accept commands. P_BUSY means that it busy executing in a + mode where it cannot accept standard IPC requests. (8/13) + +sys/etc/prclose.x + Prclose will now close any process for which the process status is + other than P_DONE or P_DEAD, that is, any running process. (formerly + it was checking for status=P_RUNNING but we now have to allow for + P_BUSY as well). (8/13) + +sys/gio/cursor/mkpkg +sys/gio/cursor/gtropenws.x + When a graphics subkernel is connected to the CL the process status + is now set to P_BUSY. Graphics subkernels execute in a loop reading + GKI instructions and cannot accept standard IPC requests, such as + environment change requests, without corrupting the IPC protocol. + (8/13) + +pkg/cl/config.h + Increased a couple of history buffer sizes. In particular SZ_CMDBLK + is supposed to be larger than a line buffer and it wasn't after the + recent increase in the line buffer size. SZ_CMDBLK was increased + from 512 to 2048, and the history buffer size was increased from 2048 + to 8192. (8/14) + +pkg/images/immatch/src/imcombine/t_imcombine.x + Fixed a segmentation violation caused by attempting to close the + mask data structures which are not defined if an error occurs opening + the input or output images. (8/14 FV) + +pkg/system/rename.x +pkg/system/rename.par +pkg/system/doc/rename.hlp + The rename task was rewritten to hopefully make the code clearer and + easier to follow. The task now checks for the $/ characters in + root or extn replacement strings and prints an error message if either + of these characters are found. For completeness the field-editing + feature now permits "ldir" to be modified as well as "root", "extn", + and "all" (modifying the ldir part of a filename is another way to + move the file to the named directory). (8/15) + +doc/notes.v210 + +local/notes.v210 - +local/notes.v211 + + Broke the old notes.v210 into a frozen v2.10 notes file and a new + notes.v211 file for IRAF V2.11 and revisions. (8/15) + +unix/hlib/motd +unix/hlib/zzsetenv.def + System version changed to V2.11EXPORT. (8/15) + +unix/hlib/mkiraf.csh + For the NOAO servers we use a version of mkiraf which permits imdir + to include hostnames, e.g. imdir=tucana!/d0/iraf (this is not + currently included in the export version of the system). It turns + out that while this mkiraf script was setting imdir correctly in the + login.cl, it was not actually creating the directory if it didn't + exist. The local version of mkiraf was modified to use the iraf + version of mkdir in x_system.e. This avoids the problem with host! + and the unix csh/mkdir, and also works when the directory is on a + different host than the one executing the script. (8/16) + +pkg/images/imcoords/src/sffind.x + Fixed a type mismatch in a call to atan2. (8/18 LED) + +sys/imio/iki/fxf/fxfrfits.x + In fxf_load_header, the calculation of "totpix" could overflow a 32 + bit integer for large (e.g. 8K by 8K) images. The calculation was + changed to avoid overflow. A bug was also fixed affecting the use + of PCOUNT in the expression. The value returned for "totpix" is not + actually the total pixels in the image as the name suggests, but the + size in 2880-byte FITS logical blocks of the data area of the image, + the data area being the pixel matrix plus PCOUNT data units. At the + moment we want to minimize changes, but later we should make more + general modifications to the code to change the name of this + variable to something more descriptive. (8/18) + +unix/boot/wtar/wtar.c + Added a call to memset to zero the file header structure before + setting the field values. Unix tar on at least one platform (Digital + Unix) was complaining about unused fields of the tar file headers. + (8/20) + +dev/hosts + Added the Jannuzi/Dey machine chomper to all servers (8/20 MJF) + +dev/hosts + Added beet (Sol2.4 machine), mosaic machines rush and driftwood + along with all their aliases (8/20 MJF) + +bin.ssun/S11_5.4.e + + Added a V2.11 shared image linked for Solaris 2.4. (8/20) + +pkg/images/tv/display/dspmmap.x + There was a bug in the code when using pixel masks which gives + "Warning: PLIO: reference out of bounds on mask". This was + introduced with the changes to allow masks and images to have + different binning. (8/21 FV) + +sys/mwcs/iwewcs.x + In the case of an image with more than 2 axes where CDELT/CROTA is + used instead of a CD matrix, the CDELT value for axes other than + the RA/DEC projection axes (or axes 1-2 if no projection) was + being discarded and replaced with cdelt=1.0. (8/21) + +pkg/images/imutil/src/t_imtile.x + Fixed a bug in the range decoding code that could produce an integer + divide by 0 if the range syntax in xtools$ranges.x was extended to + include zero (8/22 LED). + +pkg/cl/config.h + Increased the size of the stack and dictionary. The V2.11 changes to + SZ_FNAME affect storage allocation in compiled scripts, hence under + V2.11 scripts will use more space than they used to. (8/27) + +sys/mwcs/mwcs.h + Increased LEN_FC (the size of the compiled function call portion of + a runtime CTRAN descriptor) from 48 to 64. This descriptor is + internal to MWCS and the change should have no effect outside the + interface. (8/28) + +dev/graphcap +dev/imtoolrc + Updated a few of the KPNO instrument frame buffer entries in graphcap + and imtoolrc. Affected were cn# 26,27, 35-40. No others were + affected, only these KPNO-specific entries. (8/28) + +sys/imio/iki/fxfopix.x + Fixed a typo: IM_LEN(im) -> IM_LEN(im,1). Evidently the Sun Fortran + compilers didn't complain about this (it was found on AIX). (8/29) + +pkg/images/tv/imexamine/iepos.x + Added missing argument in fprintf call. (8/29/97, Valdes) + +pkg/images/imcoords/src/ccfunc.x +pkg/images/imcoords/src/t_ccsetwcs.x +pkg/images/imcoords/src/skyctran.x + Removed extraneous argument from 2 call to mw_stati. Removed extra + arguments from 2 call to printf. (8/29/97, Davis) + +pkg/images/lib/skywcs.x + Added missing argument to fprintf call. (8/29/97, Davis) + +pkg/images/immatch/src/linmatch/rglcolon.x + Added missing argument to call to rg_lstats. (8/29/97, Davis) + +pkg/cl/prcache.c + The pr_unlock() function was comment out. This has never caused a + problem as the CL does not currently use this interface routine, + however it was causing a compiler error on one platform due to a + malformed comment, so it was uncommented. (8/29) + +pkg/plot/impstatus.x + In sl_getstr, changed "Memc[sl]" to "int(Memc[sl])" to fix a mixed + type mod function problem. This routine is a bit on in that it stores + a variable nlines, the number of status line lines, in a char variable + in a char array (but it should work). (8/29) + + +--------------------------------- +V2.11 Public EXPORT release. (8/29) + +sys/imfort/imfort.h +sys/imfort/imcrex.x + Added support for the "oifversion" environment variable to IMFORT. + This is identical to what is in IMIO. The default is version 2 (new) + format images. (9/05) + +sys/imfort/imwrhdr.x + In the process of making the above fairly simple addition I found a + bug in writing V1 headers: IM_V1HDRLEN was not getting set correctly + as the pointer was "im" instead of "v1". This was preventing imfort + from writing valid V1 image headers (and it appears that IMIO may have + the same problem as well, seen as the user fields of the header not + being written, although other code may patch up the header field later + in the case of IMIO). We did not see this problem earlier in IMFORT + since it had no way to write V1 format images. (9/05) + +sys/imfort/db/imgnfn.x + In the process of making the above fairly simple addition I found + another header related bug, this one appears to have been there for + some time. The phead.f test IMFORT task was only printing the + standard fields of the header, not the user fields, although it was + supposed to print the full header. Updated the relevant section of + code in the IMFORT version of db/imgnfn.x with the code from the + IMIO version of the file, which does not have this problem. (This + causes a problem in phead.f now when it encounters a HISTORY card, + but I think that is a problem with the task, not with imfort). (9/05) + +unix/hlib/strip.iraf + Changed the -file entry for bin.ssol to bin.ssun. (9/22) + +pkg/utilities/urand.x +pkg/utilities/doc/urand.hlp + If the "seed" parameter is set to INDEF then the clock time (integer + seconds since 1980) will be used as the seed. This allows different + executions to produce different random numbers. (9/23, Valdes) + +local/login.cl + Updated logver to "IRAF V2.11 May 1997". (9/24) + +pkg/images/immatch/src/imcombine/icscale.x +pkg/images/immatch/doc/imcombine.hlp + When the zero offsets or weights are specified in a file the weight + adjustment for differeing sky levels is not done. (10/3/97, Valdes) + +pkg/plot/phistogram.x + Fixed an error in the previous bug fix that was causing phistogram + to die with a segmentation violation for text file input. (10/4, Davis) + +dev/hosts + Removed dyevushka, changed virgo to ssun, added mogollan as a ssun + for GONG and zippy as my home linux box. (10/17 MJF) + +pkg/images/immatch/src/imcombine/t_imcombine.x + When using STF images the failure error when there are too many images + is SYS_IKIOPEN rather than the others that occur with OIF, etc. + Added this error code to be caught and have the program build a + stacked image to combine. (10/21/97, Valdes) + +dev/hosts + Changed argo to a solaris machine (10/28/97 MJF) + +pkg/dataio/fits/fits_read.x + Fixed a bug in the tape listing code that was causing the entire + file to read instead of skipped if: 1) make_image = no, 2) there + was only 1 image per file, and 3) fe = 0. (11/3/97 LED) + +dev/hosts + Added new-tucana for testing (11/6/97 MJF) + +dev/hosts + Cleaned up the hosts file according to Nigel's list: + Solaris: aquarius, aten, bokchoy, carina, chomper, corvus, enzo, + herbie, humu, inti, kukita, kumbhakarna, mdi, mozart, norma, + oso, potosi, saguaro, soi, soleil, tofu, virgo, xari. + SunOS: arun, aspen, bruckner, caelum, charfman, condorito, eagle, + grus, jalapeno, jannu, jupiter, kale, katmai, loaner-1, + lonestar, mars, mintchip, mira, moraine, msgsun, musca, + mytoy, odysseus, pantera, radix, rainbow, sagittarius, seurat, + solarium, spud, surya, susanna, taco, tesla, video, vivalid, + volans + Machines not already in the file were not added as requested. Removed + retired machines madrona and hummel (11/7/97 MJF) + +sys/mwcs/wfinit.x + Removed a duplicate "extern" declarations line for the MSP function. + This was causing a compilation failure on Digital Unix. (11/07) + +unix/os/zfiopr.c + Added a check that the pipe file descriptors do not exceed MAXOFILES. + (11/07) + +pkg/cl/main.c + Changed the datatype of the variable old_onipc from int to PFI. + This is used as a function pointer in CL/LIBC but on 64-bit platforms + such as the DEC Alpha int and pointer are different sizes. (11/09) + +pkg/images/imfilter/src/t_median.x +pkg/images/imfilter/src/t_mode.x + Changed the type declaration of the boundary extension from int + (incorrect type) to real (the correct type) to avoid FPE errors + on the Dec Alpha. (11/11 LED) + +sys/imio/iki/stf/stfaccess.x +sys/imio/iki/fxf/fxfaccess.x + BTOI was being called on the value returned by iki_validextn without + converting the value to a boolean expression. (11/12) + +sys/imio/iki/stf/stfhextn.x +sys/imio/iki/stf/stfnewim.x +sys/imio/iki/fxf/fxfhextn.x + Added checks to make sure that the old image pointer o_im is not + used unless we have a new copy image and o_im is not NULL. (11/13) + +pkg/cl/builtin.c + When building up the command line for a foreign task, if an unquoted + INDEF was given an argument the CL would segvio on some platforms. + Technically, since INDEF is a keyword and is being used as a string + it should be quoted by the user, and things would work fine in this + case. But the CL should not segvio and it should check for an + indefinite operand in such a case so the code was modified to do so + and generate the string "INDEF" in this case, where a string argument + is being generated for an external command. This doesn't avoid the + need to quote other keywords however, e.g. "grep else" won't work + unless "else" is quoted. (11/13) + +sys/osb/ieee.gx +sys/osb/ieeed.x +sys/osb/ieeer.x +unix/as.sparc/ieee.gx +unix/as.sparc/ieeed.x +unix/as.sparc/ieeer.x +unix/as.ssol/ieee.gx +unix/as.ssol/ieeed.x +unix/as.ssol/ieeer.x + The IEEE i/o package was modified to detect IEEE subnormals on input + and map them to zero. This feature is enabled along with NaN + mapping; both are either enabled or disabled. The ieee statistics + however count only NaN mappings, not subnormals, since the latter + are considered the same as zero values. A subnormal is a number so + small (close to zero) that it cannot be accurately represented. For + example the smallest IEEE single precision real is about 1.175e-38. + Numbers from e-38 to e-45 or more gradually lose precision and are + considered subnormals which should be rounded to zero. An IEEE + subnormal is any floating point number which has an exponent of + zero. (11/14) + +sys/imio/iki/fxf/fxfhextn.x +sys/imio/iki/stf/stfhextn.x + Added an initializer for local variable "old_kernel". (11/15) + +sys/imio/iki/fxf/fxfksection.x + 1. A warning message is now issued if one writes to a new file and + the "overwrite" flag is set in the kernel section. + 2. When writing a new image to a file in new-copy mode, an extension + index is specified and overwrite is not set, append can be specified + to avoid an error trap (it is not clear why this does not apply to + case new-image as well). (11/16) + +sys/imio/iki/fxf/fxfopen.x + Several minor changes to improve error handling for the overwrite and + append parameters in the ksection. It is an error to try to overwrite + a nonexistent extension. Overwrite and append cannot be given in the + same ksection. If overwrite is explicitly given in the ksection to + overwrite a specific extension, this overrides any "append" option + in the fkinit. (11/17) + +sys/imio/iki/fxf/fxfopix.x + 1. A loop copying IM_LEN to FIT_LENAXIS was replaced by an equivalent + call to AMOVI. + 2. A temporary fix has been put in the fxf_byte_short routine to + create the temporary file in 'tmp' rather than in the working + directory (this should be replaced eventually by a runtime conversion + scheme which avoids writing any temporary files). (11/17) + +sys/imio/iki/fxf/fxfopix.x + The BSCALE/BZERO handling was modified to correct any precision + errors resulting from formatted input (CTOD) when checking for the + usual case of BSCALE/BZERO being 1.0/0.0. If the number is 1 or 0 + to within the allowable precision the converted number is replaced + by the exact number to eliminate the conversion error. Also, the + keywords are always preserved even if the scaling is unitary. (11/17) + +sys/imio/iki/fxf/fxfupdhdr.x + 1. The variable "group" was being used before its value was defined. + 2. This routine uses a temporary file in some cases when changing the + size of the header. "close(in_fd)" could be called in cases where + this temporary file was not used. + 3. Added one conditional to fxf_header_diff() to return zero on 'diff' + when the file does not exist and we want to have a dataless header. + This also works when the want to append only a header. (11/17) + +sys/imio/iki/fxf/zfiofxf.x + The fxf{zrd,zwr} routines were modified to avoid a case where the + number of bytes to read/write could be negative. (11/17) + +pkg/images/imutil/src/imcopy.x - +pkg/images/imutil/src/mkpkg +pkg/images/lib/imcopy.x + Two different versions of the file imcopy.x in the images package + were causing inconsistent behavior in the imcopy task. The version + images$lib/ was updated and the version in images$imutil/src/ was + deleted. (11/18 LED) + +sys/imio/mkpkg +sys/imio/imseti.x +sys/imio/imsetr.x + IMIO has long had the odd structure for imset where imseti would + call imsetr to set integer valued parameters. This worked, but it + is always a bad idea to involve the floating point unit in integer + computations, and we encountered a portability problem on one + platform in code that set a pointer value (SPP pointers are integers + but the value can be large enough to exceed the 24 bit integer + precision of a single precision real). Imseti and imsetr were + therefore broken out as two independent routines with integer or + real parameters set directly by one or the other. For backwards + compatibility either can still be used however to set any IMIO + parameter, subject to the implied conversion. (11/18) + +sys/imio/imstatr.x + + IMIO had imstati and imstats (string) routines but no imstatr, even + though there there is a imsetr. Added an imstatr. (11/18) + +sys/imio/db/imgnfn.x +sys/imfort/db/imgnfn.x + Modified the imgnfn code, which returns a list of named keywords + from the image header matching some pattern, to exclude lines in the + header user area which are not named keywords, i.e. not + keyword=value assignments. This would include history and comment + lines, or blank lines, none of which are considered header keywords. + (11/18) + +sys/imio/db/mkpkg +sys/imio/db/idbfstr.x + + Added a new internal IMIO routine idb_filstr which filters an input + string to remove tabs, newlines, or unprintable control codes. (11/21) + +sys/imio/db/impstr.x +sys/imio/db/imputh.x + These routines were modified to use idb_filstr to filter the input + text before placing it in the image header. In principle we should + not be doing this, but since most existing headers are subject to + FITS restrictions it is best to do so (also due to the way this code + writes the headers tabs could cause things to be misformatted). + (11/21) + +sys/imio/db/imaddf.x + The keyword name is filtered as above, also any embedded whitespace + is removed. (11/21) + +sys/imio/iki/fxf/zfiofxf.x +sys/imio/iki/fxf/fxfpak.x +sys/imio/iki/fxf/fxfupk.x + 1. The fxfzwr routine, used when the FITS kernel writes to a file, + would modify the input IMIO/FIO data buffer in some cases on some + platforms. This could cause data corruption, or if you were lucky + an invalid operand exception. + 2. fxfzrd was modifying the input argument boffset. + 3. In fxfupk.x, fxf_altmd, which converts from int to double when + applying bscale/bzero, would fail for in-place operations (which + is how it is being called by the FK). + + Some other minor changes. We will modify this code further later + to eliminate the temp file used when accessing byte image or short + images with non-unitary bscale/bzero. There may be some other + interim restrictions on updating byte images and so on. (11/24) + +sys/libc/scanf.c + Increased SZ_NUMBUF from 25 to 256. A number with a lot of leading + non-significant zeros (0.0000<etc>12345) could overflow an internal + temporary string buffer. (12/07) + +pkg/cl/gram.c + 1. In caseset() the first argument is a pointer value but it was + declared as an int. Changed to memel. This was causing switch/case + to fail on 64 bit platforms like the Alpha. + 2. There was also an apparent bug in the case of a string case + which could prevent use of character constants as cases. (12/07) + +pkg/cl/mem.h +pkg/cl/stack.c + The stack utility functions push/pop/ppush are used to push and pop + operands from from the control stack, which is an array of memel + (generic integer type memory elements, used to store values of + various actual types). "push" is used in a generic way in the CL to + push both types of values, but this could cause portability problems + on machines where e.g. int and pointer are not the same size. + Rather than try to remember to always cast things properly when + calling push, the functions were changed to pushmem/ppushmem/popmem, + explicit type memel, and push/ppush/pop were changed to macros that + automatically coerce arguments of any type to memel. Hence common + usages such as "push(0)" and "push(stkop(v))" are still acceptable + and should now be portable. (12/07) + +pkg/cl/gram.c + Changed a sscanf call in the code which parses a sexagesimal number + to operate in double instead of float. This fixes a problem where + a statement such as "=1:12:34.567" would lose precision. (12/08) + +math/llsq/gen.f + This file produced compiler warning about unitialized variables, + and indeed some branches of an assigned goto (sorry) were using + unitialized variables. It seemed apparent what the author intended, + so the variable initializers were moved to above the assigned goto. + (12/10) + +sys/imio/iki/fxf/fxfksection.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfrfits.x + Some missing sfree() calls were added. (12/10) + +sys/qpoe/qpio.h + Fixed a typo in a definition of "defyblock". (12/10) + +sys/mwcs/mkpkg +sys/mwcs/wfinit.x +sys/mwcs/wftnx.x + +sys/mwcs/wfzpx.x + +sys/mwcs/wfgsurfit.x + + Added two new, experimental WCS function drives for TNX (tangent plane + plus polynomials) and ZPX (zenithal radial polynomials). These are + used for optically distorted astrometric applications, e.g. the NOAO + Mosaic wide field camera. (12/10,12) + +pkg/images/immatch/doc/geomap.hlp + Added a entry for the verbose parameter to the geomap help page. + (12/11 LED) + +pkg/images/imgeom/doc/imtrans.hlp +pkg/images/imgeom/doc/rotate.hlp + Improved the discussion of 90, 180, and 270 degree rotations in the + imtranpose and rotate task help pages. + (12/11 LED) + +pkg/math/gsurfit/gsfree.gx +pkg/math/gsurfit/gsfreer.x +pkg/math/gsurfit/gsfreed.x + Fixed a typo in the gsurfit package cleanup routine. + (12/11 LED) + +pkg/images/imutil/src/t_imreplace.x +pkg/images/imutil/src/imrep.gx +pkg/images/imutil/imreplace.par +pkg/images/imutil/doc/imreplace.hlp + Added a radius parameter to also replace any pixels within a + specified distance of pixels within the replacement window. + (12/11 FV) + +dev/hosts + Added mars to hosts file for all server (12/12 MJF) + +sys/imio/iki/oifwrhdr.x + Fixed a typo, IM_V1HDRLEN(im) -> IM_V1HDRLEN(v1). (12/12) + +unix/shlib/mkshlib.ssol-sc34 + The shared library build would fail on Solaris if /opt/SUNWspro was + a link rather than a directory, due to "find" not following the link + in a file existence test. (12/13) + +unix/hlib/irafuser.csh + The variable OSRELEASE was changed to be insensitive to micro- + releases. For example, releases 2.5 and 2.5.1 would both be + considered to be "2.5". The effect of this change is that shared + libraries will, by default, only be generated to the minor release + level (generating a shared image on a Solaris 2.5.1 or 2.6.1 system + will result in a S11_2.5.e or S11_2.6.e being generated). (12/13) + +unix/os/zzstrt.c + The shared library mapping code was changed to add a check for minor + release shared images when searching for the shared image by OS + release. For example, for an IRAF version 11 shared image on a + Solaris 2.5.1 system, the search order will be "S11_2.5.1.e", + "S11_2.5.e", and "S11.e". With the related change above only the + "S11_2.5.e" shared image would be generated for a 2.5 system, but + one could manually install separate 2.5 and 2.5.1 shared images if + desired and the distributed linked images would automatically use + the microrelease version. (12/13) + + NOTE: Solaris IRAF is now being relinked using Solaris 2.6 instead + of 2.5.1. The Solaris 2.5 shared image, of course, is still being + linked on a 2.5.1 system. So far as we know there shouldn't be any + problem running Solaris executables on any version of Solaris so + long as the correct shared image is available. + +sys/imio/iki/iki.h +sys/imio/iki/ikiopen.x +sys/imio/iki/ikiaccess.x +sys/imio/iki/ikiparse.x +sys/imio/iki/ikirename.x +sys/imio/iki/ikidelete.x +sys/imio/iki/ikicopy.x + The iki_access routine was changed to query all image kernels to see + if they recognize a given image, and return ERR in this case. This + happens when there are multiple images with the same root name but + with different image types, and the image was referred to + ambiguously (e.g. a directory contains "pix.imh" and "pix.fits" and + the image name is given as "pix"). + + The IKI copy, delete, and rename operations will abort with an + "ambiguous image name" error if this situation occurs. The iki_open + routine (immap) will invoke the ambiguous image error when opening + an existing image and multiple images with the given name exist, + however it will allow multiple images to be created or existing + images to be clobbered (clobber control is implemented at the image + kernel level). + + A kludge had to be added to iki_parse to provide special treatment + for the standard testimage dev$pix. Otherwise an ambiguous image + error would result due to having dev$pix.imh and dev$pix.hhh in the + same directory, both matching "dev$pix". pix.hhh is not a real + image, merely a template used to construct new STF images, but it is + used in existing applications code (STSDAS) hence could not easily + be renamed. (12/13-14) + +sys/imio/iki/oif/oifaccess.x + To implement the above it was necessary to drop support for + imagefiles with no extension from the OIF kernel. It is time we got + rid of this feature anyway. There probably aren't any existing OIF + images that don't have an extension, but if there are they can be + renamed and still be read. (12/14) + +sys/imio/imaccess.x + The imaccess routine in IMIO will return YES if a single image + exists with the given name, NO if no image exists with the given + name, and will take an SYS_IKIAMBIG error exit (ambiguous image + name) if multiple images exist with the same name. I considered + having imaccess return ERR in the case of multiple images, but this + would have been an interface change, e.g. imaccess==YES could fail + even if the named image existed. An error handler can still be used + to detect this situation. (12/14) + +sys/libc/cimaccess.c + The LIBC routine c_imaccess (and the CL imaccess function) will return + ERR rather than abort, if the ambiguous image error occurs. (12/14) + +lib/syserr.h +lib/syserrmsg + Added the SYS_IKIAMBIG (ambiguous image name) error event. (12/14) + +sys/NAMES +sys/INDEX + + Installed an updated version of the old forgotten INDEX file and + added a new file NAMES. INDEX provides an index of all system + library procedures. NAMES provides the mapping between long source + file names and 6-character library names. NAMES can be used to + check for system library name collisions with applications procedure + names. (12/14) + +pkg/images/immatch/src/linmatch/rglscale.x + Fixed a floating point operand error that could occur if the + scaling algorithm was one of "mean", "median", or "mode", + and one or more of the reference image regions had a zero valued + mean, median, or mode. The error was in the bscale and bzero error + computation. (12/15) + +dev/graphcap + A few dozen lines at the end of the graphcap file somehow got + replaced with NULs; the size of the file did not change so it looks + like some sort of bizarre system problem. Replaced the file with + an earlier version after a diff/merge to verify that the bulk of + the file had not changed. Propagated to Lyra and Vega for platform + upgrade testing. (12/16) + +pkg/images/lib/skywcs.h +pkg/images/lib/geomap.h +pkg/images/lib/geofit.gx +pkg/images/lib/geofit.x +pkg/images/lib/rgccwcs.x +pkg/images/imcoords/ccfind.par +pkg/images/imcoords/ccmap.par +pkg/images/imcoords/ccsetwcs.par +pkg/images/imcoords/cctran.par +pkg/images/imcoords/ccxymatch.par +pkg/images/imcoords/src/t_ccfind.x +pkg/images/imcoords/src/t_ccmap.x +pkg/images/imcoords/src/t_ccsetwcs.x +pkg/images/imcoords/src/t_ccxymatch.x +pkg/images/imcoords/src/t_ccfunc.x +pkg/images/imcoords/src/ccfunc.x +pkg/images/imcoords/src/ccxytran.x +pkg/images/imcoords/doc/ccfind.hlp +pkg/images/imcoords/doc/ccmap.hlp +pkg/images/imcoords/doc/ccsetwcs.hlp +pkg/images/imcoords/doc/cctran.hlp +pkg/images/imcoords/doc/ccxymatch.hlp + Modified the astrometry routines to support the experimental function + drivers tnx and zpx as well as the other new function drivers. + (12/15 LED) + +pkg/images/immatch/src/linmatch/lsqfit.h +pkg/images/immatch/src/linmatch/rglscale.x +pkg/images/immatch/src/linmatch/rgliscale.x +pkg/images/immatch/src/linmatch/rglsqfit.x +pkg/images/immatch/src/linmatch/rglplot.x + Fixed several bugs in the linmatch bad regions handling code that + could result in floating point errors in the fit and other problems + if the reference image regions shifted to the input image coordinate + system were entirely or partially off the input image. Modified + the graphics routines to window the fits more appropropriately in + the case where the majority of the input data is bad for one reason + or another (12/19 LED). + +doc/newsfile +doc/v211revs.hlp + + Added the V2.11 revisions summary to the newsfile ("news" command in + IRAF) and to the DOC archive. (12/22) + +sys/fmtio/evvexpr.gy + In the xvv_quest code (the "?" conditional-expression operator) the + local variable nelem was not being initialized in certain + circumstances. (12/23) + +--------------------------------- +V2.11.1 patch released. (12/23 1997) + +dev/hosts + Added solaris machine mogollan (1/16/98 MJF) + +sys/tty/ttyopen.x + A corrupted termcap file with a few thousand zero bytes at the end + would cause ttyopen to segvio when attempting to fetch an entry not + found, and hence reading into the zero data region. (1/16) + +dev/termcap + This end of this file had been replaced by zero bytes. The first 79 + 512 byte blocks were valid data and the rest of the file was zeroed. + This is the same problem seen with graphcap earlier! It still looks + like a system problem. A rdist update a while back must have + propagated the error to lepus where it was causing a segvio in PC-IRAF. + Replaced this file with an older version on ursa, after a diff to + check for revisions. (1/16) + +sys/imio/iki/ikiextn.x + The iki_validextn() function, used to test whether a file extension + is valid for a given image format, was not rejecting extensions + such as "extnXXX" which match the first few characters of a valid + extension, but which are longer strings. (1/20) + +dev/hosts + Added IRIX machine almond at the WIYN (1/21/98 MJF) + +pkg/cl/login.cl + Changed the version check string for V2.11. (1/21) + +pkg/cl/modes.c + This routine was calling c_stggettline as (fd,buf,maxch) but since + stggetline is patterned after FIO getline it uses a SZ_LINE buffer + and takes no maxch argument. The CL code was using a 512 char + buffer, which is plenty large enough, but with the recent changes to + buffer sizes in V2.11, SZ_LINE is now 1023 and is hence larger than + 512. Even this would not normally be a problem as the actual string + read never exceeds 512 chars, however the string packing routine + called always sets the last char in the output buffer to EOS to + truncate strings that are larger than the output buffer. Hence, a + very subtle buffer overrun could occur. This showed up as a segvio + during CL logout on a Linux system. Since C allocates auto storage + on the stack, the memory overrwrite was overriting the frame pointer + for a function call in c_main, and the RET instruction in execute + was vectoring off into segvio land. Nasty stuff. (1/23) + +sys/unix/os/zwmsec.c + Replaced the setitimer-based zwmsec code by a version that can use + either usleep() or the old setitimer code. (1/23) + +sys/imfort/imcrex.x + Added a line of code to set IM_ACMODE to NEW_IMAGE. The imwrhdr + code, used to update the image header, sets certain fields only if + a new image is being created. (2/03) + +sys/imio/imsetbuf.x + Modified to disable "fast" i/o if swapping is needed. (2/05) + +pkg/images/lib/geograph.gx +pkg/images/lib/geograph.x + Modifed the plot labels to say "reject =" instead of "sigrej = " to + maintain naming consistency with the reject parameter. + (2/23/98 LED) + +unix/hlib/buglog.csh + Modified to create V2.11 bugs instead of V2.10 bugs. The buglog + file is in iraf/v211, but this is a link to the v2.10 buglog to + allow a common buglog file to be used for both. (2/24) + +sys/imio/iki/oif/oifwrhdr.x + Modified oif_trim() to check for a nonzero string count so that it + does not call alcrc with a negative char count, which could cause + it to corrupt memory. (2/27) + +noao/mkpkg + Added architecture enties for "irix", "rs6000", and "redhat". (3/03) + +images/lib/geogmap.gx +images/lib/geogmap.x + The calls to gt_colon were missing an argument so any gtools + command would cause the geomap or ccmap tasks to crash. It looks + as though the calling sequence for this routine changed a long + time ago but geomap never picked up the change. (3/11 LED) + +unix/boot/xyacc/y1.c +unix/boot/xyacc/y3.c +unix/boot/xyacc/y4.c + Cleaned up some poorly formed comments. These were of the form + /* ... /* ... */, i.e. the opening and closing forms didn't match. + This caused a problem with the C compiler on AIX4. (3/11) + +sys/gio/cursor/gtrwsclip.x + This file contained an expression ((tu <= 0) != (tv <= 0)) which is + technically illegal (in Fortran) as != is an arithmetic operator and + the operands are logical. Replaced the above expression by the + equivalent (! ((tu <= 0 && tv <= 0) || (tu > 0 && tv > 0))) which, + while less clear, avoids the type clash. (3/14) + +sys/gio/stdgraph/stggim.x + This file contained a couple instances of an AND of a short variable + and the constant 017B, an integer, causing a short/int type mismatch. + Changed the 017B to use a type variable of type short for the mask + value. (3/14) + +sys/plio/plp2l.gx +sys/plio/plp2r.gx + These files contained a couple of instances of max(0,<short>) + constructs which caused an integer/short type mismatch. Had to + replace the numeric 0 instances by a short variable. (3/14) + +dev/hosts + removed virgo (4/13 MJF) + +dev/termcap + Added an entry for lwdp. (4/13) + +dev/hosts + added kalahari (5/7/98 MJF) + +pkg/system/references.cl + Added the switch "metacharacters=yes" (the default) to several calls + to the MATCH task in this script. A user had changed the default + value of this parameter, causing the references task to fail. (5/08) + +sys/gio/imdkern/idk.x +sys/gio/imdkern/imdpcell.x +dev/graphcap + Changed BPW from 8 to 32 (nbits used per integer word of the IDK + image bitmask); this increases the encoding efficiency of the + bitmask to the maximum to reduce the size of the internal IDK frame + buffer bitmask used for overlay graphics. Increased the maximum + frame buffer size from 2048 square to 8192 square. Changed the + max resolution for imdkern to 8192x8192 in the graphcap entry. (5/19) + +dev/hosts + Changed pisces to ssun (5/28/98 MJF) + +dev/hosts + added 'defiant' to the list (5/29/98 MC) + +pkg/images/immatch/src/imcombine/t_imcombine.x +pkg/images/immatch/src/imcombine/icombine.gx +pkg/images/immatch/src/imcombine/ic_rmasks.x + +pkg/images/immatch/src/imcombine/ic_log.x +pkg/images/immatch/src/imcombine/mkpkg +pkg/images/immatch/imcombine.par +pkg/images/immatch/doc/imcombine.hlp + Added a new output which is a pixel mask identifying which pixel in + which input image is rejected or not included in the final output. + (5/15/98, Valdes) + +pkg/images/tv/display/dspmmap.x + The steps to check if an image and mask have an integer relationship + (integer sampling and integer offsets) in their physical coordinate + systems could fail because real precision was not high enough + in MWCS transformation calls. Changed variables and MWCS calls + to double. (5/29/98, Valdes) + +dev/hosts + Added loaner-1 (6/3/98 MJF) + +pkg/images/imutil/doc/imexpr.hlp + Added an example of how to create a circular pixel mask. (6/8/98 MJF) + +dev/hosts + Added tesla (6/12/98 MJF) + +pkg/dataio/fits/fits_cards.x + Added a check for pre-existing IRAFNAME keywords to the wfits task. + (6/8/98 LED) + +sys/imfort/imopnx.x + The value of the user variable min_lenuserarea was being read but was + not being used correctly to allocate the header buffer. Changed the + calc of len_hdrmem to len_hdrmem = LEN_IMHDR + (len_ua / SZ_STRUCT). + (6/22) + +pkg/images/tv/imedit/epix.h +pkg/images/tv/imedit/t_imedit.x +pkg/images/tv/imedit/epcolon.x +pkg/images/tv/doc/imedit.hlp + The temporary editing buffer image was made into a unique temporary + image rather than the fixed name of "epixbuf". (6/30/98, Valdes) + +dev/hosts + Added makalu (7/8/98 MJF) + +unix/shlib/mkshlib.sos4 + Had to change a "-lresolv" to "-lresolv -l44bsd" to get things + to link due to recent changes in SunOS on tucana. (7/13) + +pkg/dataio/import/t_import.x + Modified to initialize the 'use_cmap' flag to on by default so 8-bit + colormap images will be converted more intuitively. (7/14/98 MJF) + +pkg/images/immatch/src/imcombine/t_imcombine.x + The internal calculation type was changed from the highest precedence + type of the input images to the highest of the input and output. + This allows setting the output type to be real to force computation + in real for integer input images. Not doing this could cause severe + truncation errors if the users specify their own scaling values. + (7/14/98, Valdes) + +dev/hosts + Removed: katmai jannu + Changed to Solaris: grus seurat + Added (Solaris): xari chopin bluemoon magenta matisse makalu mele gronk + Added (SunOS): grotrian (7/16/98 MJF) + +dev/hosts + Changed deneb to solaris (7/22/98 MJF) + +pkg/images/immatch/src/imcombine/icgdata.gx + Needed to initialize the number of pixels combined for the case where + there is initially no data. (7/29/98, Valdes) + +pkg/images/tv/imexamine/stfmeasure.x + The logic in STF_FIT for determining the points to fit and the point + to use for the initial width estimate was faulty allowing some bad + cases to get through. (7/31/98, Valdes) + +pkg/math/nlfit/nlchomat.gx +pkg/math/nlfit/nlchomatr.x +pkg/math/nlfit/nlchomatd.x + Modified the singular matrix test to make a comparison against EPSILON + instead of 0.0 to avoid floating point problems. (8/1/98, Davis) + +pkg/images/tv/display/t_display.x + Added checks for a data range of zero, or which rounds to zero for + short data, to avoid floating divide by zero errors. Rather than + resort to a unitary transformation in this case the requested + data range minimum is decreased by one and the maximum is increased + by one. (8/11/98, Valdes) + +unix/os/zfioks.c + Added a new environment variable "KSRSH". This can be used to define + the RSH command to be used to make network connections. The default + value is "rsh" (or the equivalent "remsh" on one old system). For + example, one can set KSRSH=ssh to cause IRAF networking to use ssh + instead of rsh (ssh is a more secure version of rsh that uses strong + authentication). (9/08) + +pkg/images/immatch/doc/geomap.hlp + Changed references to the old register task to gregister which is + the new task name. (9/10, Davis) + +pkg/images/imutil/src/t_imarith.x + Modified the imarith task so that header updating would only occur + if noact=no, to fix a segmentation violation error. (9/16, Davis) + +dev/hosts + Removed nonexistent benhur and monoceros (9/21, MJF) + +lib/time.h +sys/etc/cnvtime.x +sys/etc/cnvdate.x + Minor changes were made to print the year using 4 digits instead of + 2, to make this code Y2K compliant. (10/29) + +pkg/images/immatch/src/imcombine/icsetout.x + Fixed a problem with input images that have dimensional reduction. + (10/6, Valdes) + +sys/mwcs/wfmspec.x + The multispec format WCS driver was modified to normalize the + weights array (adjust the sum of the weights to 1.0) if they are + not already normalized. IRAF code should produce normalized weights, + but there were cases where unnormalized weights could get into the + WCS, and this could cause systematic errors in radial velocities. + (11/18) + +dev/hosts + Added solaris machine lilawati (12/1, MJF) + +pkg/math/iminterp/asitype.x +pkg/math/iminterp/asisinit.x +pkg/math/iminterp/asigetr.x +pkg/math/iminterp/doc/asitype.hlp +pkg/math/iminterp/doc/asisinit.hlp +pkg/math/iminterp/doc/asigetr.hlp + Three new routines were added to the 1D image interpolation package: + asitype, asisinit, and asigetr. (12/28 LED). + +pkg/math/iminterp/msitype.x +pkg/math/iminterp/msisinit.x +pkg/math/iminterp/msigetr.x +pkg/math/iminterp/doc/msitype.hlp +pkg/math/iminterp/doc/msisinit.hlp +pkg/math/iminterp/doc/msigetr.hlp + Three new routines were added to the 2D image interpolation package: + msitype, msisinit, and msigetr. (12/28 LED). + +pkg/math/iminterp/im1interpdef.h +pkg/math/iminterp/iminterp.h +pkg/math/iminterp/iminterp.hd +pkg/math/iminterp/iminterp.men +pkg/math/iminterp/iminterp.help +pkg/math/iminterp/iminterp.spc +pkg/math/iminterp/arbpix.x +pkg/math/iminterp/arider.x +pkg/math/iminterp/arieval.x +pkg/math/iminterp/asider.x +pkg/math/iminterp/asieval.x +pkg/math/iminterp/asifit.x +pkg/math/iminterp/asifree.x +pkg/math/iminterp/asigeti.x +pkg/math/iminterp/asigrl.x +pkg/math/iminterp/asiinit.x +pkg/math/iminterp/asirestore.x +pkg/math/iminterp/asisave.x +pkg/math/iminterp/asivector.x +pkg/math/iminterp/ii_1dinteg.x +pkg/math/iminterp/ii_cubspl.f +pkg/math/iminterp/ii_eval.x +pkg/math/iminterp/ii_pc1deval.x +pkg/math/iminterp/ii_polterp.x +pkg/math/iminterp/ii_sinctable.x +pkg/math/iminterp/ii_spline.x +pkg/math/iminterp/mkpkg +pkg/math/iminterp/doc/arbpix.hlp +pkg/math/iminterp/doc/arider.hlp +pkg/math/iminterp/doc/arieval.hlp +pkg/math/iminterp/doc/asider.hlp +pkg/math/iminterp/doc/asieval.hlp +pkg/math/iminterp/doc/asifit.hlp +pkg/math/iminterp/doc/asifree.hlp +pkg/math/iminterp/doc/asigeti.hlp +pkg/math/iminterp/doc/asigetr.hlp +pkg/math/iminterp/doc/asigrl.hlp +pkg/math/iminterp/doc/asiinit.hlp +pkg/math/iminterp/doc/asirestore.hlp +pkg/math/iminterp/doc/asisave.hlp +pkg/math/iminterp/doc/asisinit.hlp +pkg/math/iminterp/doc/asitype.hlp +pkg/math/iminterp/doc/asivector.hlp + The 1D interpolation routines were modified to support look-up table + sinc interpolation and drizzle resampling. Minor improvements in + weighting were made to the existing 1D sinc routines. (12/28 Davis) + +pkg/math/iminterp/im2interpdef.h +pkg/math/iminterp/iminterp.h +pkg/math/iminterp/iminterp.hd +pkg/math/iminterp/iminterp.men +pkg/math/iminterp/iminterp.help +pkg/math/iminterp/iminterp.spc +pkg/math/iminterp/mrider.x +pkg/math/iminterp/mrieval.x +pkg/math/iminterp/msider.x +pkg/math/iminterp/msieval.x +pkg/math/iminterp/msifit.x +pkg/math/iminterp/msifree.x +pkg/math/iminterp/msigeti.x +pkg/math/iminterp/msigetr.x +pkg/math/iminterp/msigrid.x +pkg/math/iminterp/msigrl.x +pkg/math/iminterp/msiinit.x +pkg/math/iminterp/msirestore.x +pkg/math/iminterp/msisave.x +pkg/math/iminterp/msisinit.x +pkg/math/iminterp/msisqgrl.x +pkg/math/iminterp/msitype.x +pkg/math/iminterp/msivector.x +pkg/math/iminterp/ii_bieval.x +pkg/math/iminterp/ii_greval.x +pkg/math/iminterp/ii_pc2deval.x +pkg/math/iminterp/ii_spline2d.x +pkg/math/iminterp/mkpkg +pkg/math/iminterp/doc/mrider.hlp +pkg/math/iminterp/doc/mrieval.hlp +pkg/math/iminterp/doc/msider.hlp +pkg/math/iminterp/doc/msieval.hlp +pkg/math/iminterp/doc/msifit.hlp +pkg/math/iminterp/doc/msifree.hlp +pkg/math/iminterp/doc/msigeti.hlp +pkg/math/iminterp/doc/msigetr.hlp +pkg/math/iminterp/doc/msigrid.hlp +pkg/math/iminterp/doc/msigrl.hlp +pkg/math/iminterp/doc/msiinit.hlp +pkg/math/iminterp/doc/msirestore.hlp +pkg/math/iminterp/doc/msisave.hlp +pkg/math/iminterp/doc/msisinit.hlp +pkg/math/iminterp/doc/msisqgrl.hlp +pkg/math/iminterp/doc/msitype.hlp +pkg/math/iminterp/doc/msivector.hlp + The 2D interpolation routines were modified to support sinc and + look-up table sinc interpolation and drizzle resampling. (12/28 Davis) + +pkg/images/imgeom/magnify.par +pkg/images/imgeom/src/t_magnify.x +pkg/images/imgeom/doc/magnify.hlp + Installed a new version of the magnify task which support 1D and 2D + sinc and look-up table sinc interpolation and 1D and 2D drizzle + resampling. Modified the out-of-bounds pixel handling algorithm to + conform to the other image resampling tasks. (12/28 Davis) + +pkg/images/imgeom/imshift.par +pkg/images/imgeom/src/t_imshift.x +pkg/images/imgeom/doc/imshift.hlp + Installed a new version of the imshift task which supports 2D sinc and + look-up table sinc interpolation and 2D drizzle resampling. + (12/28 Davis) + +pkg/images/imgeom/shiftlines.par +pkg/images/imgeom/src/t_shiftlines.x +pkg/images/imgeom/src/shiftlines.x +pkg/images/imgeom/doc/shiftlines.hlp + Installed a new version of the shiftlines task which supports 1D sinc + and look-up table sinc interpolation and 1D drizzle resampling. + (12/28 Davis) + +pkg/images/immatch/xregister.par +pkg/images/immatch/src/t_xregister.x +pkg/images/immatch/src/rgximshift.x +pkg/images/immatch/doc/xregister.hlp + Installed a new version of the xregister task which supports 2D sinc and + look-up table sinc interpolation and 2D drizzle resampling. + (12/29 Davis) + +pkg/images/immatch/geotran.par +pkg/images/immatch/src/geometry/geotran.h +pkg/images/immatch/src/geometry/t_geotran.x +pkg/images/immatch/src/geometry/geotran.x +pkg/images/immatch/src/geometry/geotimtran.x +pkg/images/immatch/doc/geotran.hlp + Installed a new version of the geotran task which support 1D and 2D + sinc and look-up table sinc interpolation and 1D and 2D drizzle + resampling. Modified the out-of-bounds pixel handling algorithm to + conform to the other image resampling tasks in the case where the + entire input image is in memory. (12/29 Davis) + +pkg/images/imgeom/rotate.par +pkg/images/imgeom/imlintran.par +pkg/images/imgeom/doc/rotate.hlp +pkg/images/imgeom/doc/imlintran.hlp + Installed new versions of the rotate and imlintran tasks (these + are scripts which run geotran) which support 2D sinc and look-up + table sinc interpolation and 2D drizzle resampling. + (12/29 Davis) + +pkg/images/immmatch/gregister.par +pkg/images/immmatch/sregister.cl +pkg/images/immmatch/wregister.cl +pkg/images/immmatch/doc/gregister.hlp +pkg/images/immmatch/doc/sregister.hlp +pkg/images/immmatch/doc/wregister.hlp + Installed new versions of the gregister, sregister, and wregister + tasks (these are scripts which run geotran) which support 1D and 2D + sinc and look-up table sinc interpolation and 1D and 2D drizzle + resampling. (12/29 Davis) + +dev/graphcap + Added an entry for 'clp2', a new color printer (1/2 MJF) + +pkg/images/immatch/src/wcsmatch/t_wcscopy.x + Modified wcscopy to update the RADECSYS, EQUINOX, and MJD-WCS keywords + as well as the mwcs keywords. (1/7/99, Davis) + +dev/hosts + Added solaris machine roadrunner (1/11/99 MJF) + +dev/devices.hlp + Updated devices.hlp to include clp, clp2, and clp2t. Propogated the + updated graphcap and devices.hlp files to ursa, gemini, and bigx. + (1/13/99 jb) + +dev/hosts + Changed tribble from sparc to solaris (1/13/99 MJF) + +lib/pkg/gtools.h +pkg/xtools/gtools/gtools.h +pkg/xtools/gtools/gtvplot.x +pkg/xtools/gtools/gtctran.x +pkg/xtools/gtools/gtplot.x +pkg/xtools/gtools/gtfree.x +pkg/xtools/gtools/gtcur.x +pkg/xtools/gtools/gtgui.x +pkg/xtools/gtools/gtcur1.x +pkg/xtools/gtools/gtswind.x +pkg/xtools/gtools/gtwindow.x +pkg/xtools/gtools/gtget.x +pkg/xtools/gtools/gtset.x +pkg/xtools/gtools/gtreset.x +pkg/xtools/gtools/gtcopy.x +pkg/xtools/gtools/gtcolon.x +pkg/xtools/gtools/gtinit.x +pkg/xtools/gtools/gtlabax.x +pkg/xtools/gtools/gtascale.x +pkg/xtools/gtools/gthelp.x - +pkg/xtools/gtools/gtpage.x - +pkg/xtools/gtools/mkpkg + A new version of the GTOOLS routines was installed. The internal + data structure was extended and colon commands and GUI messages + added to support GUI tasks (SPECTOOL, XRV, and XCURFIT). The + package interface, the public include file, and all colon and + keystroke commands remain unchanged for existing applications. Two + routines which were never used were deleted. (12/16/98, FV) + +pkg/xtools/icfit/icfit.h +pkg/xtools/icfit/icgui.x + +pkg/xtools/icfit/icguishow.gx + +pkg/xtools/icfit/icferrors.gx + +pkg/xtools/icfit/icfshow.x + +pkg/xtools/icfit/icfvshow.gx + +pkg/xtools/icfit/icgaxes.gx +pkg/xtools/icfit/icgcolon.gx +pkg/xtools/icfit/icgdelete.gx +pkg/xtools/icfit/icgfit.gx +pkg/xtools/icfit/icggraph.gx +pkg/xtools/icfit/icgnearest.gx +pkg/xtools/icfit/icgparams.gx +pkg/xtools/icfit/icgsample.gx +pkg/xtools/icfit/icgundelete.gx +pkg/xtools/icfit/icparams.x +pkg/xtools/icfit/icerrors.gx +pkg/xtools/icfit/icshow.x +pkg/xtools/icfit/icvshow.gx +pkg/xtools/icfit/mkpkg +pkg/xtools/icfit/names.h + The package was modified to add colon commands and GUI messages to + support GUI tasks (SPECTOOL, XRV, and XCURFIT). The package + interface for existing applications remains unchanged and no + changes are required to calling programs. (12/16/98, FV) + +pkg/images/immatch/doc/wregister.hlp +pkg/images/immatch/doc/sregister.hlp + Added an example of how to do images mosaicing with the wregister + and sregister tasks. (1/28/99, LED) + +bin.sparc/S.e + +bin.ssun/S.e + + The "S.e" link was restored. This link points to the Sun/IRAF shared + image for the development system. It is not required for execution, + but is required at compile/link time for edsym.e to be able to + update the symbols for the IRAF shared image. This is needed to + debug functions in the shared image. (2/11) + +unix/boot/spp/rpp/mkpkg.sh +unix/boot/spp/rpp/ratlibc/mkpkg.sh + The ratlibc code was being compiled into a library "libc.a". This + caused problems linking rpp.e on Solaris 7, so the name of this + internal, temporary library was changed to libratc.a. (2/11) + +pkg/images/immatch/src/listmatch/t_xyxymatch.x +pkg/images/imcoords/src/t_ccxymatch.x + Fixed the xyxymatch and ccxymatch tasks so that they work properly when + the number of reference files is greater than one and equal to the + number of input files. In that case xyxymatch and ccxymatch are supposed + to pair up the input and reference files one to one instead of using the + last file in the reference file list, as they were doing. (2/22 LED) + +dev/hosts + Added sunos machine arun (3/4/99 MJF) + +dev/hosts + Deleted nonexistant hosts herbie, piscis, pictor, ozzie, and sonoma + (3/18/99 MJF) + +unix/hlib/r1mach.f +unix/hlib/d1mach.f +unix/hlib/i1mach.f + Installed updated versions of these files from the PORT package + on netlib. The values for the minimum and maximum IEEE floating + point normals were invalid (thanks to Steve Walton for pointing + this out). NOTE: even on a machine with IEEE floating point, the + file d1mach.f has to be modified to reflect the byte order of + the platform IRAF is being ported to. (4/08) + +lib/time.h +sys/etc/dtmcnv.x +sys/etc/gmtcnv.x +sys/etc/mkpkg +unix/hlib/libc/knames.h +unix/os/gmttolst.c +unix/os/mkpkg +unix/os/zgmtco.c + 1) A new kernel routine "zgmtco" was added to OS. This gives the + correction, in seconds, from LST to GMT. (LST here means local + standard time, or clock time). Since IRAF already returns the clock + time in LST seconds, this allows either LST or GMT to be determined. + Note LST corrects for daylight savings time, the GMT correction takes + this into account as well. In practice programs can just ignore + daylight savings time and let the kernel worry about it. + + 2) New routines gmttolst() and lsttogmt() were added to ETC. These + convert times (in seconds) to and from LST and GMT. A value of zero + can be input to get the correction value. + + 3) A set of four new routines dtm_encode, dtm_decode, dtm_encode_hms, + and dtm_decode_hms were added to ETC. A related flag value was + added to <time.h>. "dtm" standard for date/time. These routines + convert time expressed in year, month, date, and time of day to and + from a string value. A flags value can be used to select the type + of time string to be encoded or decoded. Currently DATE-OBS in + FITS-Y2K and the old FITS formats are supported. (4/20) + +pkg/language/language.hd +pkg/language/language.men +pkg/language/doc/scan.hlp +pkg/language/doc/fprint.hlp + These help pages were updated to document the CL printf() and scanf() + functions added back in V2.10. (4/21/99 MJF) + +pkg/images/tv/imexamine/iepos.x + The output of the 'x' and 'y' keys was not being written to the log + file because of a typo. (5/7/99, Valdes) + +pkg/dataio/fits/wfits.h +pkg/dataio/fits/fits_cards.x +pkg/dataio/fits/fits_params.x + Modified wfits to write the DATE keyword values in the new format + (including a time field) and in units of GMT as specified by the + new standards. The new format will take effect Jan 1 at 00:0:00 GMT. + (5/8/99) + +pkg/images/lib/skywcs.x + Modified the image wcs decoding routines to support both the old + and new DATE-OBS format. All tasks in the imcoords and immatch + package which decode the image wcs should pick up the change. + (5/13/99) + +pkg/images/imcoords/doc/ccsetwcs.hlp +pkg/images/imcoords/doc/imcctran.hlp +pkg/images/imcoords/doc/skyctran.hlp +pkg/images/immatch/doc/skyxymatch.hlp + Added some information about the new DATE-OBS format to the help + pages for the ccsetwcs, imctran, skyctran, and skyxymatch tasks. + (Davis, May 13, 1999) + +unix/os/zglobl.c + Increased the size of SZ_PROCNAME from 32 to 256 chars. On some + systems this is a full pathname, and could overflow the buffer. + (5/13) + +pkg/dataio/import/images.dat + Added a database entry for the GOES weather satellite Unidata McIDAS + image format (5/14/99 MJF) + +lib/gio.h + This and the next several changes were part of an effort to change + GIO to allow long "device names" for GUIs (which may include a GUI + file name) to be passed through the graphics stream to the stdgraph + kernel. + + Increased SZ_UIFNAME from 99 to 199 chars. This also increases the + size of the dynamically allocated GIO descriptor. (5/14) + +sys/gio/cursor/gtr.h + Increased SZ_TRDEVNAME from 29 to 229. Increased SZ_KERNFNAME from + 59 to 259. This also increases the size of the dynamically allocated + GTR descriptor. (5/14) + +sys/gio/stdgraph/stdgraph.h + Increased SZ_GDEVICE from 31 to 256. Increased SZ_UIFNAME from 99 + to 199. Increased SZ_SBUF from 1024 to 2048. These changes did + not change the size of the dynamically allocated stdgraph descriptor, + as string space is dynamically allocated in the string buffer. + (5/14) + +pkg/images/imgeom/doc/imlintran.hlp + Fixed a bug in the imlintran.hlp page. (5/17 LED) + +dev/hosts + Added pecan and crunch (5/17 MJF) + +unix/os/zghost.c + This routine was calling gethostname() to read the hostname + directly into the caller's buffer. This could fail if the hostname + were longer than the output buffer. Changed to read the hostname + into an internal buffer, and copy this out to the caller's buffer + separately, truncating the hostname if necessary. (5/23) + +pkg/math/iminterp/msisqgrl.x +pkg/math/iminterp/msigrl.x + Fixed a couple of bugs in the 2D integration routines that I + inadvertantly introduced when I upgraded the image interpolation + software to handle sinc and drizzle resampling. (6/2 LED) + +pkg/images/immatch/src/geometry/geotran.x + Fixed a type mismatch problem in a call to max that was causing + compilation errors on the Dec Station. (6/2 LED) + +pkg/images/imcoords/src/t_ccsetwcs.x + Improved the error message handling in the case when a database + records either not be found or could not be successfully decoded + by the ccsetwcs task. + (6/3 LED) + +pkg/images/imcoords/src/t_wcsctran.x + Fixed a bug in the wcsctran task units initialization code. + (6/3 LED) + +dev/hosts + Added vissun-1, a sparc summer student machine (6/4/99 MJF) + +pkg/images/tv/display/sigm2.x + An argument to sigm2_setup was being changed by the routine and this + changed argument was then incorrectly used by the calling program. + The argument was made input only. (6/15/99, Valdes) + +pkg/images/immatch/src/imcombine/icsetout.x + Changed to better parse the offset types. The WCS correction for + offsets was incorrect. (6/17/99, Valdes) + +pkg/math/slalib/ + Upgraded slalib from version 1.6.3 to version 2.3.0. There are + seventeen new routines in the library. Most of these either deal + with converting between the FK5 to ICRS (Hipparcos) equatorial + coordinate systems, or with computing orbital elements for solar + system objects. (6/18/99, LED) + +pkg/images/immatch/src/geometry/t_geotran.x + Fixed a bug in the transform list decoding routine that was preventing + geotran from using the same transform for all the input images. This + bug was introduced when geotran was modified to use the image template + instead of the file template expansion code to manage the record list. + (Davis, June 18, 1999) + +pkg/images/immatch/doc/geomap.hlp + Added some notes and an example to explain and illustrate the role + of the reference and input coordinates for different applicatons, + i.e. image resampling and coordinate transformation. + (Davis, June 18, 1999) + +pkg/math/slalib/fk52h.f +pkg/math/slalib/fk5hz.f +pkg/math/slalib/h2fk5.f +pkg/math/slalib/hfk5z.f + Fixed a bug in the ICRS <-> FK5 conversion routines that was + producing incorrect results for right ascensions >= 12 hours. + (Davis, June 23, 1999) + +pkg/images/lib/skywcs.h +pkg/images/lib/skywcs.x +pkg/images/imcoords/src/ttycur.key +pkg/images/imcoords/src/skycur.key +pkg/images/imcoords/doc/ccfind.hlp +pkg/images/imcoords/doc/ccmap.hlp +pkg/images/imcoords/doc/ccsetwcs.hlp +pkg/images/imcoords/doc/skyctran.hlp +pkg/images/imcoords/doc/imcctran.hlp + Added support for the ICRS system to the images.imcoords package. + (Davis, June 24, 1999) + + +pkg/images/imcoords/src/t_starfind.x + Modified the starfind task default output file naming code to deal + rationally with fits image extension names. + (Davis, June 26, 1999) + +pkg/images/imcoords/src/t_ccsetwcs.x +pkg/images/imcoords/src/ccxytran.x + Modified the ccsetwcs and cctran tasks to read a zpx (or any other + wcs transform with parameters) from the database produced by ccmap. + These tasks had not been correctly updated when the changes were made + to the immatchx versions of these tasks. + (Davis, June 26, 1999) + +pkg/utilities/surfit.par +pkg/utilities/t_surfit.x +pkg/utilities/doc/surfit.hlp + Modified the utilities task surfit to support the surface fitting + package half cross-terms option. This involved changing the type + of the parameter xterms from boolean to string. + (Davis, July 6, 1999) + +unix/boot/bootlib/envinit.c + Restructured a variable initializer (*fname = ++ip) due to a + compiler warning. (7/09) + +unix/shlib/mkshlib.ssol-sc34 + Added support for the Version 5.0 Sun compilers. (7/09) + +pkg/language/doc/fprint.hlp + The help for "printf" wasn't working; added an entry to the .help + entry at the top of the help page to enable this. (7/10) + +sys/etc/dtmcnv.x + Fixed a minor typo in a comment. (7/11) + +sys/imio/iki/fxf/mkpkg +sys/imio/iki/fxf/fxfencode.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfupdhdr.x + Installed the Y2K changes to the FITS kernel. The affected keywords + are "DATE" and "IRAF-TLM". "DATE" is the date the FITS image was + written by the FITS kernel; this is not to be confused with DATE-OBS, + which is the date of observation of the image. "IRAF-TLM" is the + FITS version of the IRAF time of last modification of the imagefile. + DATE is written in the old FITS date format through the end of 1999, + after which the Y2K/ISO format is used. IRAF-TLM, which is an + internal keyword to the FK, is always written in the new format in the + new version of the code. (7/11) + +sys/imio/iki/fxf/fxf.h +sys/imio/iki/fxf/fxfclose.x +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfrdhdr.x +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxfupk.x +sys/imio/iki/fxf/zfiofxf.x + Installed the changes for "on-the-fly" conversion of unsigned byte + images, and short images where the output pixel is real (FK has to + apply bscale/bzero scaling). The conversion is done in place in the + output buffer during an image read. The support for OTF scaling is + read-only, i.e., these images types can be read, but not written. + I don't think this is strictly necessary, but this is a limitation + of the current code (Note: read-write access to such images will + probably fail with the current implementation; read-only access to + e.g. byte images is still a useful feature however). The old + creation of a temporary image to do the scaling has been removed. + (7/11) + +dev/ypix.imh + A new version of the WCS test image (header) dev$ypix (prepared by + L.Davis) was installed. This version incorporates the new Y2K format + dates for testing, and has a year 2000 equinox FK5 WCS; otherwise + it is equivalent to wpix. The old version is still available as + dev$wpix, in addition to the old standard dev$pix. (7/12) + +sys/imio/iki/plf/plfupdhdr.x +sys/imio/iki/plf/plfopen.x + These routines were changed to use IM_HDRFILE instead of IM_NAME to + store the filename of the mask file. IM_NAME is used for the logical + image name in error messages, and only provides 80 chars, so mask + image pathnames could be truncated if if IM_NAME were used for a file + pathname. (7/12) + +sys/imio/iki/fxf/fxfupdhdr.x + In the process of reviewing and cleaning up IM_NAME usage, deleted an + unused reference to "imgcluster (IM_NAME(im), ...)". (7/12) + +sys/imio/immapz.x + Revised the code which writes IM_NAME to protect against overflow of + this string. The image name is formatted into a SZ_PATHNAME string, + and if the resultant image name is too long to fit in IM_NAME, is + regenerated using only the root of the image name. Previously bad + things would happen if the sprintf overflowed IM_NAME. (7/12) + +sys/imio/iki/fxf/fxfupdhdr.x + Fixed a minor bug what was causing the new format dates to be + written with some trailing blanks following the date string. (7/13) + +sys/imio/iki/fxf/fxf.h + Updated the FITS kernel version string (written to the ORIGIN kw) + to read "NOAO-IRAF FITS Image Kernel July 1999". (7/13) + +sys/gio/gmsg.x + This code was changed to use STDERR rather than STDOUT to send + messages to GUIs. Formerly, if the stdout of a GUI task was + redirected this could cause GUI messages (gmsg) to never reach + the GUI (this is of course still possible using STDERR, but it + is less likely that someone will need to redirect the STDERR of an + interactive GUI). The text stream are used for messaging because + messages can be any size; messages of hundreds of KB are possible, + e.g. when sending large GUI files, or documentation text. (Something + like the message bus is needed to fully address this problem). + (7/14) + +dev/graphcap + Added a new xgterm entry "xgterm-nogui", which is identical to the + xgterm entry but which has GUI messaging (gmsg) disabled. This + logical device will completely disable GUIs but still permit vector + graphics. It also disables the builtin default ED (xgterm.gui), but + the default xgterm GUI built into xgterm itself should kick in in + this case when graphics mode is entered. We don't plan to use + xgterm-nogui, but it could be useful as a fallback in case of + problems, or for testing. (7/14) + +sys/mwcs/iwewcs.x + The code which checks CTYPEi for known function types was tightened + to prevent confusion over names that share the same prefix. Hence, + function names like "linear", "sampled", and "multispec" must now + be exact matches. The prefixes "Xlon" and "Xlat" must now be "Xlon-" + and "Xlat-" to be recognized (where X is some character like "g"). + (LD Aug98, DT 7/14) + +sys/imfort/imcrex.x + Added the statement "Memc[IM_USERAREA(im)] = EOS" to initialize + the user area of a newly created image (as IMIO already does in + imio$iminie.x). Without this, there were cases where a new image + could be created with arbitrary junk in the user area. + (MC Aug98, DT 7/14) + +sys/plio/pllnext.x + After obtaining an opcode I_SH, the code does not update the value + of ld_ip(ld) even though ip has been incremented. Adding + ld_ip(ld) = ip + 1 + in the block 'case I_SH' statement solved the bug presented when + trying to copy a pixel list array into a subarray of an existent + pixel list array. (NZ Sep98, DT 7/14) + +sys/plio/plloadf.x +sys/plio/plsavef.x + Fixed a minor typo: various "mii_" names where the actual MII names + do not have an underscore. This is harmless as SPP omits the + underscores when it makes the external name, but it is preferable + to be more consistent. (7/14) + +sys/vops/asok.gx + The algorithm used in this routine was found to be extremely slow in + cases where many or all of the elements of the input area were equal. + Replaced by a different algorithm from Wirth which appears to avoid + the problem. (LD Mar 99, DT 07/14) + +sys/pmio/pmrop.x +sys/pmio/pmsten.x + pm_rop, used to perform a rasterop on an image mask, had a problem + where the operation could be performed on an area one pixel too + large in cases where an image section was in effect on the image + associated with the image mask. The code was revised to fix this + problem and add some more clipping logic in the process. + The pm_stencil routine is very similar to pm_rop (pm_stencil performs + a rasterop through a stencil mask) and was similarly modified. + (NZ Sep98, DT 07/15) + +unix/os/zfiotx.c + Fixed a case where the internal descriptor "port" (used for terminal + devices) could be referenced on a non-terminal device, causing a nil + pointer reference. This could occur when doing raw mode reads from + the terminal, but writing to an output text file instead of the + terminal. (NZ Feb99, DT 07/15) + +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfencode.x +sys/imio/iki/fxf/fxfupdhdr.x + While testing the new FK we found that files written under the + new system, using a new ISO Y2K format for DATE-TLM, could not be + read under earlier versions of IRAF. The fxf_encode_date routine + was changed to add support for formatting DATE-TLM in the old + format (which is already Y2K compliant in any case). The call + to fxf_encode_date in fxfupdhdr.x now calls it in such a way that + the old DATE-TLM format will continue to be used until 2010, by + which time one would hope that people will have upgraded to a + more recent version of IRAF so that the ISO format version of the + keyword can be used. (07/15) + +unix/os/zfiomt.c + Incredibly, this file would not compile in a bootstrap on tucana + (SunOS) even though it had not changed in a long time. It turned + out that zfiomt contained a structure field named "isset" which + aliased a system macro in <sys/param.h>. Something must have + changed in SunOS to cause this file to be included. The problem + was solved by changing "isset" in zfiomt.c to "valset". (7/15) + +lib/imio.h + Increased the default file buffer size used by IMIO a factor of 4 + from 65536 to 262144. The units are XCHAR, so in byte units the new + default image file buffer size increased from about 128 KB to about + half a megabyte (about the size of dev$pix). Note that applications + can override the default buffer size with an imset option, and any + such existing applications will be unaffected by this change + (imcombine for example probably controls the image buffer sizes in + order to have many images open at once). Ordinary imaging tasks + should function with fewer i/o operations however. (7/15) + +unix/hlib/config.h + 1. Increased the size of the file pushback buffer from 512 to 1024. + Not a big deal as it gets incremented anyway if overflow occurs. + + 2. Changed LEN_RANDBUF from 1 to 8. LEN_SEQBUF remains at 8 as + before. Random mode FIO buffers are LEN_RANDBUF*blksize, hence + these have increased in size from 512 bytes to 4KB (random mode + i/o is rarely used). Sequential mode FIO buffers are LEN_SEQBUF + *optbufsize, where optbufsize is returned by the file driver. + Sequential mode (fseti (fd, F_ADVISE, F_SEQUENTIAL) is also little + used however. Most file operations use the unscaled "optbufsize" + returned by the kernel driver (see below). + + Note config.h contains a few size definitions which are not actually + used any longer in the code, since these values now come from the + device drivers are are tuned for each device and host system. Hence + these older values were unchanged. (7/15) + +unix/hlib/libc/kernel.h + Increased the optbufsize for a binary file from 4096 to 32768. The + static file optbufsize was similarly increased, but static (mapped) + files are little used in the current system. All the other optbuf + sizes remained the same. The network devices, process communications + buffers, and so on all remain at 4KB since this value is a good + match for the buffer sizes used in the Unix kernel. + + Hence, ordinary binary file i/o operations now use 32 KB buffers + instead of 4 KB buffers. The special cases of random mode binary + file i/o and sequentially optimized binary file i/o have default + buffer sizes of 4 KB and 256 KB respectively. These should be + reasonable, safe, and efficient buffer sizes for most applications. + (7/15) + +sys/imio/iki//fxf.h +sys/imio/iki//fxfrdhdr.x +sys/imio/iki//fxfupdhdr.x + 1. The FK was revised to handle the case of writing to an image + which is being accessed using on-the-fly pixel conversion, e.g., a + byte image or a short image with scaling to real. The current + version of the FK only supports reading such images, so an attempt + to write pixels if OTF scaling is in effect causes an i/o error. + Opening the image read-write is permitted however, so that the + header can be edited. + + 2. The zfio code was reworked to eliminate the high level calls + which have crept in recently (syserr etc.). A FIO driver can make + only low level calls, e.g. to pure code routines or the iraf + kernel. Because the file driver is called by FIO, calling anything + that might call FIO can result in recursion and various nasty + situations we would prefer to avoid. To aid in implementing this a + status variable FIT_IOSTAT (as well as some extra space) was added + to the main FK descriptor. A read or write call will initially + set this to OK, but set a nonzero value if an error occurs or the + i/o operation is completed. The ZAWAIT routine later returns the + status to the caller. It appeared that the old code was not always + checking for and returning the low level i/o status. (7/15) + +pkg/cl/main.c +pkg/cl/cl.x +pkg/cl/cl.par + The CL was modified to add basic support for using the CL as a host + shell for shell scripts. When this is done the shell script + effectively replaces the login.cl file, hence startup is faster and + flexibility is maximized, but the script is responsible for any + initialization normally done by login.cl (e.g. loading packages). + This implementation is still fairly basic, e.g. the argument + handling facilities are limited, but it works. + + On a Unix system, the first line of a script which calls the CL as + a shell should be something like "#!/usr/local/bin/cl.e -f", where + /usr/local/bin/ would be either a copy of the cl.e executable, + or a link such as cl.e -> /iraf/iraf/bin.ssun/cl.e (don't call the + link "cl", as this name is already used for the shell script used + to start up an interactive iraf session). (RS, DT 7/15) + +pkg/system/references.cl +pkg/system/help/getoption.x +pkg/system/help/prhelp.x +pkg/system/help/prhlpblk.x +pkg/system/help/prfile.x +pkg/system/help/help.h + The REFERENCES task was modified to add the package name to the + output line for each task. Usage is unchanged, i.e., type + refer upd+ to regenerate the uparm$quick.ref file (using your + current list of defined packages) then "refer pattern" to find + all references matching the given pattern. (MF Jun98, DT 7/15) + +unix/hlib/zzsetenv.def + Changed the version string to "NOAO/IRAF V2.11.2EXPORT". (7/17) + +pkg/xtools/gtools/gtreset.x + This procedure was incorrectly declared as a function. (7/21, FV) + +pkg/xtools/icfit/icgfit.x + This routine is called with a graphics descriptor for interactive + fitting. The descriptor is set in an internal structure. Other + procedures, which may be called both for interactive and + non-interactive fitting, check if the descriptor is not NULL + before sending GUI messages. The problem occurs if this procedure is + first called interactively and then the non-interactive fitting + routine is called later (maybe after a deactivate workstation or + closing the descriptor) resulting in GUI messages being sent + when not in interactive mode. The solution is to return the + internal descriptor value to NULL after finishing the interactive + fitting and returning from this procedure. (7/22, FV) + +unix/hlib/mkfloat.csh + Revised the status messages slightly to make it more clear what + the program is doing. The new format is "Doing blah... done". + (7/27) + +dev/hosts + Added dbell's RH6 machine "shea". (7/28 MJF) + +pkg/math/iminterp/ii_greval.x +pkg/math/iminterp/asigetr.x +pkg/math/iminterp/msirestore.x + Fixed an uninitialized variable problem in the ii_grdriz routine + that was detected by the OpenVMS compiler. Also fixed a couple of + bugs in the new unused routine asigetr and in the new msirestore + that were detected with spplint. (8/3 LED) + +sys/imio/iki/fxf/zfiofxf.x + Added some conditional byte swapping for type short data in the + on-the-fly conversion code. (8/09) + +pkg/images/imutil/src/t_imarith.x + Added a check for division by zero in the header keywords. A warning + is printed, the keyword is not updated, and the task completes without + aborting. (8/10 FV) + +pkg/xtools/inlfit/inreject.gx +pkg/xtools/inlfit/inrejectr.x +pkg/xtools/inlfit/inrejectd.x + Rearranged the code slightly to avoid a missing sfree error detected + by spplint. (8/10/99 LED) + +sys/imio/iki/fxf/fxf.h +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfupdhdr.x + Changed the cutover date for the DATE keyword from the fixed value + 2000 to 0. Added a new hidden, not normally used environment + variable "isodates" to allow this value to be explicitly specified. + What this means is that by default, v2.11.2 will use ISO (Y2K) + format consistently from the beginning, but if this causes a problem + for some reason "isodates" can be set to some future date to cause + old format date strings to be written. It doesn't appear that the + FK or any current IRAF code actually uses the DATE keywored generated + by the FK, so there shouldn't be a backwards compatibility problem + reading with older code, images written by a V2.11.2 system. + + The value of isodates it the year on and after which ISO format + dates will be written. For example, to generate ISO format dates on + or after Jan 1, 2000, the value "2000" would be used. The value "0" + (zero) is used by convention if ISO format dates are always + desired. (8/10) + +pkg/xtools/icfit/icggraph.gx + Rearranged the code to avoid a return without an sfree. (8/10 FV) + +pkg/xtools/fixpix/xtpmmap.x + Removed extra argument to imgl1i. (8/11 FV) + +pkg/xtools/imtools.x + Changed to correctly declare fnext as a function. (8/11 FV) + +pkg/xtools/xtanswer.x + Fixed incorrect number of arguments in getline call. (8/11 FV) + +pkg/xtools/gtools/gtcolon.x + Corrected definition of btoi. (8/11 FV) + +sys/gio/cursor/rcursor.x +sys/gio/cursor/gtrwritep.x +sys/gio/cursor/gtrundo.x +sys/gio/cursor/gtrstatus.x +sys/gio/cursor/gtrredraw.x +sys/gio/cursor/gtrpage.x +sys/gio/cursor/gtrgtty.x +sys/gio/cursor/gtrctrl.x +sys/gio/cursor/gtrbackup.x +sys/gio/cursor/grcwcs.x +sys/gio/cursor/grctext.x +sys/gio/cursor/grcpl.x +sys/gio/cursor/grcopen.x +sys/gio/cursor/grcinit.x +sys/gio/cursor/grccmd.x +sys/gio/cursor/grcclose.x +sys/gio/cursor/grcaxes.x +sys/gio/cursor/gtrinit.x + It turned to to not be needed, but in the process of checking out a + bug on another platform I beefed up the error checking in the GIO + cursor mode code. This is always a good idea, so I will leave the + changes in. (8/11) + +sys/etc/main.x +sys/etc/xalloc.x +sys/fio/diropen.x +sys/fio/fwtacc.x +sys/fio/osfnlock.x +sys/gio/sgikern/sgk.x +sys/imio/db/idbkwlu.x +sys/imio/iki/stf/stfwfits.x +sys/ki/kfchdr.x +sys/ki/kopdpr.x +sys/mtio/mtopen.x +sys/tty/ttygsize.x + Added a few missing sfree() calls, found with an automatic code + checking tool. (8/12) + +pkg/cl/history.c + Ehistory command: When UP is used a few times, followed by enough + DOWNS to get back to a "cl> " prompt, the next command entered is a + silent noop. The next command after that is fine. Adding an + execute=1 in get_command() when repeating input_ on an empty line + fixes this problem (08/12 SRo/RS/DT) + +sys/imio/impnl.gx + Fixed a typo in a comment block. (08/12) + +pkg/cl/history.c + Increased the maximum number of history commands to be listed from + 100 to 800 (the actual history buffer storage is 8192 which is + probably already enough to store 800-1000 or more commands, since + the average command is fairly short). (08/12) + +unix/gdev/sgidev/mkpkg.sh +unix/gdev/sgidev/README.gif + +unix/gdev/sgidev/sgi2gif.x + +unix/gdev/sgidev/sgi2xbm.x + + Added these two new SGI graphics translators, used to write IRAF + graphics to GIF or XBM files, e.g. to generate on-the-fly IRAF plots + to include in web pages. (08/12 MJF/DT) + +unix/os/zfiond.c + Modified the server-side code to set the socket option SO_REUSEADDR + when opening a socket and binding it to an IP address and port. + This avoids the annoying delay which is otherwise seen when a + server quits, but the socket it was using is not released for + some time until the kernel times it out and releases it. This + only affects server-side connections and currently I don't know + of any IRAF servers that use ZFIOND, but probably all server-side + socket code should use this feature. (setsockopt was added quite + some time after most of the socket code in IRAF was originally + written). (08/12) + +dev/graphcap + Added generic entries "g-gif" and "g-xbm" for the new sgi2gif and + sgi2xbm translators. (8/13/99 MJF) + +sys/imio/iki/fxf/zfiofxf.x + In fxfzst the "physical" file block size and buffer size parameters + were being returned as multiples of the FITS logical block size, + 2880. Low level file i/o however must observe the real physical + file block size and maximum transfer sizes as returned by zsttbf. + On Unix systems this would not matter as i/o transfers do not have + to be block aligned, however this would cause problems in some cases + on VMS. The 2880 related code was removed, and the file parameters + from zsttbf are now returned as-is without change. (This still may + not be entirely correct as the block size and max transfer size + should perhaps be scaled if the virtual file driver scales the + data, but this is complicated by the fact that the FITS header is + not also scaled; it is probably not going to be a problem). (8/16) + +sys/plio/plcircle.x + Tweaked up the circle drawing computation a bit. (8/16) + +unix/boot/spp/xc.c + XC was modified to, when linking -Bstatic, switch back to -Bdynamic + at the end of the link line so that -lc is linked dynamic. This is + always a good idea for Solaris systems, and turned out to be + necessary in order for one executable to be runnable on all Solaris + versions (2.5.1, 2.6, 2.7). Most other libraries are still linked + static, mainly so that the Fortran compiler does not have to be + installed to be able to run IRAF executables on a given platform. + + Supporting Solaris 7 was what forced the issue here. Note: Solaris + IRAF executables are linked under Solaris 2.5.1 and will run on + solaris versions 2.5.1 through 2.7. (8/18) + +--------------------------------- +V2.11.2 patch released. (18Aug99) + +dev/graphcap + Modified the g-gif entry to use a pid in the filename (8/19/99 MJF) + +language/doc/hidetask.hlp + The correct syntax seems to be 'hidetask task,[task,..]'. The + help file did not have the commas (nz aug 20,99) + +pkg/dataio/export/exrgb8.x + Fixed a bug causing the cmap() function to write a garbage line at the + top or bottom of the output image. (8/20/99 MJF) + +dev/devices.hlp + Added and entry for ursa!mtp at Taft's request (8/24/99 MJF) + +pkg/images/tv/wcslab/t_wcslab.x +pkg/images/tv/wcslab/wcslab.x + Fixed a couple of bugs in the wcslab task that were causing it + to fail with the message "ERROR: MWCS: coordinate system not + defined (physical)" on the DecAlpha when the usewcs parameter + was set to yes, and on Sun systems when the input image was + undefined. (8/28/99 LED) + +sys/imio/iki/fxf/fxfupdhdr.x + 1. An sfree was in the wrong place; moved to the end of the block + of code it was in. + 2. In the "diff" routine, the OBJECT keyword was not being accounted + for correctly in computing the new header size. + 3. If the new header were more than one FITS block (36 cards) smaller + than the old, the extra blocks were being filled with zeros instead + of blanks. + 4. Boy would this code be a lot better off it were using the new KWDB + interface to manage the headers... + (9/15) + +pkg/images/tv/wcslab/wcslab.h + Added an entry for tnx to the list of supported projections types. + This apparently fixed a garbled plot problem for tnx images, + espcially for thos around ra=0.0. + (9/17 LED) + +pkg/math/curfit/mkpkg +pkg/math/deboor/mkpkg +pkg/math/iminterp/mkpkg +pkg/xtools/inlfit/mkpkg + Added some missing file dependencies to the math library mkpkg files. + (9/20 LED) + +pkg/images/tv/display/mkpkg +pkg/images/tv/wcslab/mkpkg +pkg/images/tv/imedit/mkpkg +pkg/images/tv/imexamine/mkpkg + Added some missing file dependencies and removed some unecessary ones + from the tv package mkpkg files. + (9/21 LED) + + +pkg/images/imcoords/src/mkpkg +pkg/images/imgeom/src/mkpkg +pkg/images/immmatch/src/imcombine/generic/mkpkg +pkg/images/immmatch/src/imcombine/mkpkg +pkg/images/immmatch/src/imutil/generic/mkpkg +pkg/images/immmatch/src/imutil/mkpkg + Added some missing file dependencies and removed some uneccessary ones + from the image package mkpkg files. (9/21, LED) + +pkg/plot/mkpkg + Added some missing file dependencies and removed some uneccessary ones + from the plot package mkpkg files. (9/21, LED) + +pkg/proto/mkpkg + Added some missing file dependencies and removed some uneccessary ones + from the proto package mkpkg files. (9/21, LED) + +pkg/utilities/curfit.gx +pkg/utilities/curfit.x + Removed an unecessary include statement (9/22, LED) + +pkg/xtools/icfit/icshow.x +pkg/xtools/icfit/icvshow.gx + The gt pointer was not being used when called directly by + UTILITIES.CURFIT. If the task was run non-interactively, so there + was no prior call to the icfit graphics routines, then IC_GT structure + element was not set causing an error. These routines now set the + element with the gt argument passed by the calling routine. + (9/14, Valdes) + +pkg/images/imutil/imreplace.par +pkg/images/imutil/src/imrep.gx + Fixed a floating-point precision problem with short/int images in + which the lower cutoff could be rounded up. Also fixed a typo in the + parameter file. (9/22/99, MJF) + +imio/iki/fxf/zfiofxf.x + The routine fxf_cnvpx() was not offsetting properly to FITS + units other than one, e.g. giving a segvio when trying to access + the 2nd extension. This would only affect access to images of + type byte or short where on-the-fly conversion is required. + Adjusting to the beginning of the unit solved the problem. + (Some clean up done as well). (9/23 NZ/DT) + +imio/iki/fxf/fxfopix.x + In routine fxf_discard_keyw() a change was made to filter out the + keyword BLOCKED from obsolete GEIS files in FITS format. This was + causing problems when adding a keyword into a header that was full + to the 2880 bytes block and the INHERIT keyword was set to T. + (9/23 NZ/DT) + +imio/iki/fxf/zfiofxf.x + A buffer overrun could occur in fxfzwr, when writing to the output + image. This caused a SEGVIO when testing the new kernel on an + OpenVMS system. (9/29) + +pkg/images/tv/imexamine/mkpkg + Added a file dependency to the mkpkg file that was missed the last + time, (9/30 LED) + +pkg/images/tv/imedit/t_imedit.x + The use of a temporary image causes the output image type to be + set by "imtype" instead of any explicit extension. Changed to + use the xt_mkimtemp routine which tries to create a temporary image + of the desired output image type. (10/1 FV) + +pkg/images/immatch/src/imcombine/t_imcombine.x + Modified error recovery to avoid a tranfer out of an IFERR block + message. (10/14, FV) + +pkg/images/immatch/src/imcombine/t_imcombine.x + A call to IMUNMAP within the THEN clause of an IFERR replaces the + error string (inappropriately) so that a later ERRACT reports the + wrong error. The code was modified to get the error string before + calling IMUNMAP and then restores the error condition with an + ERROR call instead of an ERRACT. (10/21, FV) + +pkg/dataio/export/bltins/exeps.x + Fixed an array overrun when writing EPS trailer comments. (10/25/99 MJF) + +sys/imio/iki/fxf/fxfopen.x + The iferr handler for fxf_rheader was catching header read errors and + turning them into warning messages. These can be serious errors + though requiring the image open to fail. Added an erract(EA_ERROR) + to repost the error after the cleanup performed in the iferr block + in fxfopen. (10/26) + +sys/etc/mkpkg +sys/fmio/mkpkg +sys/gio/calcomp/mkpkg +sys/gio/cursor/grcstatus.x +sys/gio/mkpkg +sys/gio/nsppkern/mkpkg +sys/gio/stdgraph/mkpkg +sys/imio/iki/fxf/mkpkg +sys/imio/iki/oif/mkpkg +sys/imio/iki/qpf/mkpkg +sys/ki/mkpkg +sys/memdbg/mkpkg +sys/plio/tf/mkpkg +pkg/system/help/mkpkg + Fixed minor mkpkg library file dependency related problems or + oddities. (10/26) + +sys/mwcs/iwctype.x + Modified the code which recognizes the cards CDi_j, CDELTi, CRPIXi, + CRVALi, and CTYPEi to accept these cards only if the name is an + exact match, i.e., no trailing characters. Data in the draft FITS + WCS standard may have a character appended if there are multiple WCS, + and this could cause a secondary WCS to be confused with the primary. + (10/26) + +unix/os/zfchdr.c + This code trims any trailing "/" from a directory path before + doing a chdir to the new directory. This would fail if the path + were "/" (the unix root directory). Changed the code to trim the + trailing slash only if it is a trailing slash. (10/26) + +pkg/math/gsurfit/gsder.gx +pkg/math/gsurfit/gsderr.x +pkg/math/gsurfit/gsderd.x +pkg/math/gsurfit/gs_fder.gx +pkg/math/gsurfit/gs_fderr.x +pkg/math/gsurfit/gs_fderd.x +pkg/math/gsurfit/gs_deval.gx +pkg/math/gsurfit/gs_devalr.x +pkg/math/gsurfit/gs_devald.x + Fixed a bug in the code which computes the derivatives for non-linear + chebyshev and legendre polynomials surfaces. In the process + of fixing those bugs decided to rewrite the code using the same + recursion relations that are used to generate the original surface. + (10/27 LED) + +pkg/system/references.cl + Modified the task to filter the stderr as well as stdout, to eliminate + the "No help available" warning messages. (10/29) + +dev/hosts + Added new redhat boxes atand and omhah (11/3/99, MJF) + +pkg/dataio/import.par +pkg/dataio/export.par + Changed query param modes to auto to avoid prompt from epar :go + command. (11/4/99 MJF) + +--------------------------------- +V2.11.3 patch in BETA test. (11/05) + +dev/hosts + Added PC-IRAF systems vmware, slack40, suse62 and sol7 (11/16/99 MJF) + +pkg/images/immatch/src/imcombine/icombine.gx + An input array was declared with a value of 3 though it was passed to + the routine with 4 elements. Later there was a reference to + the 4th element. While this is legal as the size in the declaration + is a dummy this was a compiler error on one platform. Changed the + declaration to 4. (11/19/99, Valdes) + +pkg/images/imfilter/src/fmedian.x +pkg/images/imfilter/src/frmedian.x +pkg/images/imfilter/src/fmode.x +pkg/images/imfilter/src/frmode.x +pkg/images/imfilter/src/fmd_hist.x + Modified the fast median algorithm histogram storage from short to int + to avoid integer overflows in the case that xfilter * yfilter > 32767 + and more than 32767 pixels end up in 1 bin as is likely to happen + in bad pixel regions. (11/19/99, Davis) + +pkg/math/gsurfit/gsder.gx +pkg/math/gsurfit/gsderr.gx +pkg/math/gsurfit/gsderd.gx + After rewriting the derivative code to work correctly for the higher + order chebyshev and legendre cases, forgot to add back in the 4 lines + that do the final normalization to user (not -1.0 to 1.0 normalized) + coordinates, causing the derivatives to be way offscale. Found + by user running longslit. Only affects 2.11.3. (11/23/99 Davis) + +sys/fmtio/evvexpr.gy + The main routine of evvexpr dynamically allocates the output operand + structure. It was setting the flags O_FREEVAL+O_FREEOP for this + structure, overriding any flags in the operand returned by the + expression evaluator, but clearly only O_FREEOP is warannted as the + only thing this code allocates is the operand structure. Whether + or not any vector value buffer should be freed has to be determined + by the expression code which generates the operand returned by the + expression evaluator. Hence the O_FREEVAL flag was removed. (11/23) + +pkg/images/imutil/src/imexpr.gx + Several places in the code where a new operand structure is being + initialized, code was added to either clear the entire structure, + or explicitly set O_FLAGS(o)=0 in cases where we wanted to be sure + that any values from an earlier use of the same operand structure + were not unintentionally reused. In particular, in any case where + the operand structure is being reused the O_FREEOP flag should be + clear. In any case where the operand is vector-valued and the + data vector is a pointer returned by IMIO, O_FREEVAL should be + clear as it is up to IMIO to eventually free the buffer. (11/23) + +pkg/images/imutil/src/imexpr.gx + Changed the value of LEN_IMOPERAND from 16 to 17. This problem was + probably never seen as it would be a problem only for double + operands, which are probably not used all that often. (11/24) + +pkg/images/imutil/doc/imexpr.hlp + Fixed some typos in the imexpr task help page. (11/24 LED) + +unix/os/zfiomt.c + Changed one occurrence of zmtdbg1() to zmtdbg() as the call in + question did not have an argument. This was harmless, but incorrect + and caused a compiler warning on one platform. (11/24) + +--------------------------------- +V2.11.3 patch on verge of being frozen... (11/24) + +dev/graphcap +dev/imtoolrc + Added new frame buffers for Mosaic at full frame and with several + block averaging factors. New buffers are: imt41|imt8800=8800x8800, + imt42|imt4400=4400x4400, imt43|imt2200=2200x2200, and + imt44|imt1100=1100x1100 (11/25 MJF) + +sys/osb/ieee.gx +unix/as.sparc/ieee.gx +unix/as.ssol/ieee.gx + This routine was missing some {} braces around an IF clause in + ieevupk. Although the code was technically correct as there was + only one statement (a multiline do-loop) in the IF clause, it + needed braces to be safe against modifications. (11/30) + +sys/fmtio/evvexpr.gy + There was another bug in this routine which went undetected when it + was modified several days earlier. The code would set O_FLAGS on + the output operand to ensure that the operand structure is later + deleted. By this point the actual operand had been created by + the expression evaluator. The bug was that the code was simply + overwriting O_FLAGS in the output operand. Instead it needed to + preserve the existing flags, merely insuring that the O_FREEOP flag + was set (setting the flag to O_FREEOP would clear the O_FREEVAL + flag if already set in the operand). The code was modified to + "or" in the flag, rather than clobber the whole flag word. (12/01) + +sys/imio/iki/stf/stf.h + Increased MAX_PCOUNT (the number of keywords in a group header block + for STF images) from 50 to 99. (12/02) + +sys/libc/scanf.c + Added support for "%n". This returns to an integer output argument + the number of input characters scanned thus far (a feature of ANSI C + stdio). (12/02) + +sys/libc/printf.c + Modified the *printf routines to recognize 'l', 'E', and 'G' in + formatted prints, for enhanced compatibility with ANSI C. 'l' is + ignored since it is a no-op on our current platforms anyway (related + modifiers such as 'h', 'L', and 'q' are not supported). 'E' and 'G' + are permitted, but are handled the same as 'e' and 'g' since IRAF + already prints floating point numbers using 'E'. (12/02) + +sys/libc/zztest.c + Added support to the test routine for scan for %n, and ran some + simple tests. Seems to work. (12/02) + +pkg/images/imfilter/src/frmedian.x +pkg/images/imfilter/src/frmode.x + Changed 2 aclrs calls to aclri calls that were missed when the + frmedian / frmode tasks were upgraded to work with larger kernels. + (12/03 LED) + +--------------------------------- +V2.11.3 patch frozen. (12/03) + +--------------------------------- +From here on PC-IRAF revisions will be recorded here as well as those for +the reference Sun port. Both the Sun and PC-IRAF ports are equally reference +systems now and it is long past time to start recording revisions formally +for PC-IRAF. + +unix/hlib/install [pcix] + Fixed a typo in the install script. (12/09) + +dev/tapecap.linux [pcix] +dev/tapecap.freebsd [pcix] + The tapecap.linux file had a entry which referred to a + "generic-exabyte" entry, but this entry was named "generic-exb" + later in the file. Changed the later reference to generic-exabyte". + Modified tapecap.freebsd to use the same name, although the entry + is not used in tapecap.freebsd. (12/10) + +pkg/proto/t_bscale.x + Changed the type declarations for the functions imgnld/imgnlx + and impnld/impnlx from double/complex to int to fix a hangup + or floating point errors generated when bscale is run on double + or complex images. (12/11 LED) + +pkg/dataio/import/ipdb.gx +pkg/dataio/import/bltins/ipgif.x + Fixed a string overflow bug causing segvios on PC system, also + commented out an unneeded evvfree() (12/13 MJF) + +noao/mkpkg + The entries for the HP archiectures (hp700 etc.) were missing the + -d $(DIRS) argument listing the noao directories to be processed + for an architecture change. (12/14) + +dev/hosts + Added ssun machine zathras (12/14 MJF) + +pkg/images/immatch/src/fmcombine/icsetout.x + Fixed error with MWCS dimension mismatch when using offsets on + input images which have been dimensionally reduced. (1/12, FV) + +pkg/images/immatch/src/imcombine/icgdata.gx +pkg/images/immatch/src/imcombine/iclog.x +pkg/images/immatch/src/imcombine/icmask.x +pkg/images/immatch/src/imcombine/icombine.gx +pkg/images/immatch/src/imcombine/icscale.x +pkg/images/immatch/src/imcombine/icsetout.x + Changed declarations for the array "out" to be ARB rather than 3 in + some places (because it was not changed when another element was + added) or 4. This will insure that any future output elements + added will not require changing these arguments for the sake of + cosmetic correctness. (1/13, FV) + +pkg/images/tv/imedit/t_imedit.x +pkg/images/tv/imedit/epimcopy.x + Added some errchks. In particular, even though the output and working + images can be mapped without an error there could be an error in the + first I/O as when the imdir directory is not available/writeable. + (1/18, FV) + +pkg/images/immatch/doc/imcombine.hlp +pkg/images/immatch/imcombine.par + The "outtype" parameter can take the value "none" in addition to one + of the standard datatypes. The help page was incorrect/unclear what + was meant by not specifying an output type. + (1/18, FV) + +pkg/images/lib/skywcs.x + Incorrect values for the epoch of observation were being computed + and printed by tasks like skyctran and imcctran if: 1) the input + coordinate system was being read from an image, and 2) the input + coordinate system was galactic. The problem was that the epoch was + being converted to MJD twice instead of once resulting in strange + epoch values. Unless a proper motion correction was being computed + this problem should have little practical effect although it is + disturbing to odd units in the file headers. (1/31/00, LED) + +pkg/dataio/reblock/t_reblock.x +pkg/dataio/reblock/reblock_file.x + Fixed a bug in the block writing error checking code that could cause + problems if an write error occurred. Also modified the code to + open the output file only after the first non-zero byte read in + order to avoid a magtape driver problem with opening and closing + an empty magtape file for writing. In the process of doing this + noticed a potential initialization problem that could when switching + between record copy, record trim, or record pad modes. (2/10/00 LED). + +pkg/images/immatch/wregister.cl +pkg/images/immatch/sregister.cl + Changed the boundary option "refect" to the correct value "reflect". + (2/29/00 LED) + +pkg/images/imgeom/imlintran.cl + Changed the nrows argument names to nlines which is what it is + supposed to be. + (4/11/00 LED) + +sys/imio/iki/fxf/fxfupdhdr.x + After incrementing the header size, the old header and pixel offset + were still in memory causing data to be overwritten. The solution was + to change the modification date of the file to invalidate the cache + so that next time the header is read it will be done from disk. + From testing Gemini IRAF scripts. (nz feb.24.00) (04/11) + +sys/imio/iki/fxf/zfiofxf.x + BITPIX = 8 was not handled correctly. The number of bytes read needs + to be returned to awaitb() (which calls the FXF driver) for correctly + keeping the file offset. Also BITPIX = 16 with scaling that converts + the file to 4 bytes had the same problem. (04/11) + +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfupdhdr.x + 1. The OBJECT keyword was causing havoc with some applications. + It was disappearing from an extension when it had the same + value as the global header. Now it will remain on the extension + regardless of its value and what INHERIT is. + 2. Clean up keywords from the PHU that belong to an extension only. + 3. Clean up EXTEND from an extension as well. (nz feb.24.00) + (04/11) + +sys/mwcs/wftsc.x +sys/mwcs/wfqsc.x +sys/mwcs/wfpco.x +sys/mwcs/wfpar.x +sys/mwcs/wfmol.x +sys/mwcs/wfmer.x +sys/mwcs/wfgls.x +sys/mwcs/wfcsc.x +sys/mwcs/wfcar.x +sys/mwcs/wfait.x + The car, mer, pco, gls, par, ait, csc, qsc, and tsc MWCS function + drivers were modified to correct a radian/degree conversion error + that would cause troubles for images with RA/LON < 180 and DEC > 0.0. + (04/11) + +pkg/images/imutil/src/imexpr.gx + Changed the offset of the IM_OP (operand value) field of the operand + structure to double align it. Increased the size of the structure to + reflex the increase in size. Also modified the main IMEXPR descriptor + to double align the IE_IMOP array of operands. (04/11) + +sys/imio/imt.x + The heuristic used to estimate the length of the internal array "fnt", + used to hold the edited image template string, could fail to produce + a long enough buffer in some cases. Modified the heuristic to be + more generous in estimating the maximum buffer size required. (04/11) + +qpgpar.x + The code which parses the input string and extracts a parameter name + was not checking for EOS and could cause a buffer overflow in some + circumstances. (04/14) + +dev/graphcap + Commented out the 'xtermold' entry which contained an unescaped colon + character and could cause parsing errors. (04/17 MJF) + +pkg/images/immatch/src/imcombine/icmedian.gx + Replaced with the faster Wirth algorithm as used in vops$asok.gx. + (5/16 FV) + +pkg/images/tv/display/dspmmap.x + When a pixel mask (overlay or bad pixel) needed to be matched to + the data in physical coordinates the internal generation of a + new mask was being doing in short integers. This would truncate + any masks with values greater than 16 bits. All uses of short + where changed to integer. (5/16 FV) + +pkg/dataio/export.par + Made the 'format' parameter automatic mode (5/16 MJF) + +pkg/dataio/export/expreproc.x + Modified so that the 'overlay' colors are not scaled. (5/16 MJF) + +pkg/proto/fields.x + Added 2 missing close statements and a missing sfree statement + that results in a "too many open files" error when the fields + task tries to process a long ~> 59 file list. (5/19 LED) + +imio/sys/iki/fxf/fxfupdhdr.x + When making a newcopy of an image and requesting a minimum number of + blanks lines using the PADLINES parameter in the output header, a + segmentation violation occurred. The problem was that at header + update time, the header and pixel offset arrays were not set, hence + we could nod determine the header size before adding the padline + amount. The solution was to use the 'diff' variable which has the + correct amount of blank characters to add to the output header to + insure padline. (5/29 NZ,DCT) + +imio/sys/iki/fxf/fxfrfits.x + With inheritance if an extension header keyword was also in the + global header but with a different value, the hedit task would get + the global header value and not the value from the requested + extension. The problem was that a previous problem with HIERARCH + keyword we started to compare the whole 80 characters rather than + the old SZ_KEYWORD. The solution is to compare the strings up to + the '=' sign. (5/29 NZ,DCT) + +unix/boot/spp/xc.c [sun, pcix] + This code contained some old hardcoded file path buffers which were + too small and could overflow. Updated these to use SZ_PATHNAME. + (5/30) + +unix/os/zfiolp.c [sun, pcix] +unix/os/zfiopl.c + Modified these routines to use the newer routine mkstemp instead of + the old mktemp. mkstemp not only generates a unique name but + atomically creates the file, avoiding a possible race condition. + (5/31) + +pkg/images/immatch/src/imcombine/t_imcombine. +pkg/images/immatch/src/imcombine/icimstack.x +pkg/images/immatch/src/imcombine/iclog.x +pkg/images/immatch/doc/imcombine.hlp + When there are a large number of images with bad pixel masks both the + input images and the bad pixel masks are stacked for combining. The + addition of stacking the masks allows for independent bad pixel masks + for each input image which was not supported previously. + (6/21 FV) + +pkg/dataio/export/bltins/expgm.x +pkg/dataio/export/bltins/exppm.x + Fixed a bug in writing the format header under PCIX. (6/23/00 MJF) + +sys/fio/filopn.x + Added some error handling to catch any errors from the internal + system routine ftwacc and map them to SYS_FOPEN (cannot open file). + This affects only standard disk files; a failure to open a special + device will result in a different error (SYS_FOPENDEV). (7/03) + +sys/imio/iki/ikiclose.x +sys/imio/iki/ikiopix.x +sys/imio/iki/ikiupdhdr.x + In each of these routines, added an IFERR handler for the called + image kernel routine, to catch any low level errors and map them to + the error action posted by the IKI routine. For example, any file + open or other system problems occurring in iki_opix will now ensure + that the SYS_IKIOPIX error is posted. The routines were already + trying to do this, but the IF-test employed could fail if an error + action was taken by the kernel routine. (7/03) + +dev/hosts + Added SunOS machine bruckner. (08/07 MJF) + +pkg/images/immatch/src/imcombine/t_imcombine.x + When there is an output mask or sigma image and the number of images + exceeds the maximum number allowed by the number of logical file + descriptors the task failed to delete the files when starting over + using the stacked image approach. This would result in an image + already exists error. This was fixed by deleting the files upon + error recovery. (8/09, FV) + +sys/imio/iki/fxf/fxfrfits.x + When reading a FITS file with PHU having NAXIS = 0 and no extensions + the FK would not record the PHU as already been read, leading to + further reading, which would result in and EOF error message. + (8/09 NZ/DCT) + +./sys/imio/mkpkg +./sys/imio/imopsf.x + imopsf (open pixel file) could be called more than once when + accessing a pixel mask as an image. The pixel mask code in this + file was not prepared for this, and could execute twice, causing + dev$null to be multiply opened. At image close time only one file + descriptor would be closed, causing a file descriptor leak. The + imopsf code was changed so that the pixel mask initialization code + is only executed once for an image. Note however that imopsf can + nonetheless be called more than once on an image in some cases, + e.g. the system does this to ensure that imsetbuf is called, so it + would not be correct to modify imopsf so that it simply returns + if called on an already open image. (8/16) + +./sys/imio/impmopen.x +./sys/plio/plloadf.x + Improved the error recovery in these routines so that all open files + are closed and buffers freed if a blatant error occurs, such as + trying to open a non-pixel mask file as a pixel mask image. (8/16) + +./lib/plio.h +./sys/plio/PLIO.hlp +./sys/plio/pll2p.gx +./sys/plio/pll2r.gx +./sys/plio/pllseg.h +./sys/plio/plupdate.x +./sys/plio/plopen.x +./sys/plio/plload.x +./sys/plio/plpoint.x +./sys/plio/plleq.x +./sys/plio/pllpr.x +./sys/plio/pldebug.x +./sys/plio/plssize.x +./sys/plio/plcmpress.x +./sys/plio/plclear.x +./sys/plio/plr2l.gx +./sys/plio/plp2l.gx +./sys/plio/pllrop.x +./sys/plio/pllsten.x +./sys/plio/zzlib.x + The LEN and BLEN fields of the encoded line list (LL) descriptor + would limit the length of a pixel area (and hence the size of a + pixel mask) to the max size of a signed short, 32768. This was due + to the use of a simple array of type short to encode the line list + (which simplifies handling considerably). Nonetheless the limit to + 32K was unacceptable. The fix adopted was to increase the LL header + from 3 to 7 words. Two 16 bit words are now used to encode each of + LEN and BLEN. A "version" word was added to allow the old, new, and + future encodings to be distinguished. A "hdrlen" word was added to + parameterize the length of the LL header, rather than fix it at + compile time as in the initial version. With this change, the + maximum length of an image line under PLIO is increased from 32768 + to 1073741824 (32768*32768). All the higher level PLIO code is + integer, so should already support larger masks. + + This was done in such a way that old line lists can still be read, + although PLIO will always write out new format line lists (pixel + mask files and images, QPOE, and MWCS all store encoded line lists + in external storage, so backwards compatibility is important; also + existing complied programs will continue to generate the old + format). The cost is 8 bytes per encoded line list. For most masks + this should only increase the size of the mask by a few percent at + most. (8/16) + +unix/os/zfiond.c + In the server-side code for a unix socket, "addrlen" was being + computed using an obsolete heuristic which was only correct for + older versions of the BSD socket interface. On newer systems this + could cause an "address already in use" error when opening a server + socket, due to the socket pathname getting truncated. (8/18) + +sys/fio/reopen.x + The FIO reopen routine, used to open an existing host file descriptor + on a new FIO file descriptor (e.g. providing indepedent buffered + streams for a single host file) had a bug which would cause it to + set up the new file descriptor incorrectly. (8/18) + +unix/os/zfiond.c + The ND driver supports a "text" mode which assumes that all program + data is XCHAR and converts to and from 1 byte chars on output. This + is useful for an IRAF program which communicates with an external + host program using only text. A FIO binary stream can be used, but + the external program sees only packed ASCII text while the SPP + program sees only normal SPP text. The :text mode was working for + reads, but broken for writes. On output zawrnd, given a buffer + containing say 128 SPP chars (256 bytes), would compress the data as + it should, but still write out 256 bytes. While incorrect, this + would actually work in many cases (especially when conversing with + external host programs) since the output would be a null terminated + 128 char string followed by 127 bytes of junk. (8/18) + +pkg/images/immatch/src/imcombine/t_imcombine.x + When a "cannot open image" error occurs for some other reason than + running out of file descriptors the task would go into an infinite + loop or given a segmentation error. The checking was improved to + avoid this. (8/31/00, Valdes) + +pkg/images/tv/imexamine/t_imexam.x +pkg/images/tv/imexamine/timexam.x + +pkg/images/tv/imexamine/iecolon.x +pkg/images/tv/imexamine/mkpkg +pkg/images/tv/imexamine.par +pkg/images/tv/doc/imexamine.hlp +lib/scr/imexamine.key + Added new key 't' to ouput an image section centered on the cursor. + (9/02/00, Valdes) + +dev/hosts + Added Buell Jannuzi's new ssun machine 'climber'. + Added Michael Brown's new ssun machine 'bunyip'. (9/5/00 MJF) + +pkg/cl/cl.par + Added the new CL parameter "release". This is a string valued + parameter with values such as "2.11.3a", "2.11.4", "3.0" etc. + This differs from "version" which is a descriptive string such + as "NOAO/IRAF V2.11.3 EXPORT". There can be multiple releases + of one version of the software, and "release" specifies exactly + what build the software is. The release strings are composed in + such a way that they can be used in expressions, e.g. (release >= + 2.11.3) would be true for IRAF V2.11.3 and all subsequent + releases and versions. (9/09) + +--------------------------------- +V2.11.3b limited patch release. (9/10 2000) + +pkg/images/immatch/src/imcombine/icombine.gx +pkg/images/immatch/src/imcombine/icgdata.gx + Additional errchk declarations were needed to catch out of memory + during image reading which were not caught during the initial + pass at reading the images. (9/11/00, Valdes) + +pkg/images/immatch/src/imcombine/t_imcombine.x +pkg/images/immatch/src/imcombine/icimstack.x + Error handling when running out of memory with immap (due to a very + large min_lenuserarea) and when trying to stack was fixed up to + report reasonable error messages and to not go into an infinite loop + trying to manage memory. (9/13/00, Valdes) + +pkg/images/imcoords/src/sffind.x +pkg/images/imcoords/doc/starfind.hlp + Modified the way starfind computes the background estimate used to + compute the first and second order moments so that it does not depend + on the value and density of the central pixel. (10/9/00, Davis) + +pkg/images/immatch/imcentroid.par +pkg/images/immatch/imalign.par +pkg/images/immatch/imalign.cl +pkg/images/immatch/doc/imcentroid.hlp +pkg/images/immatch/doc/imalign.hlp +pkg/images/immatch/src/listmatch/t_imctroid.x +pkg/images/immatch/src/listmatch/mkpkg + Added a new parameter maxshift to the imcentroid and imalign tasks. + Maxshift is the maximum permitted difference between the computed + and predicted shifts. Maxshift can be used to reject objects whose + centers have wandered too far from the expected center. By default + maxshift is undefined. (10/9/00, Davis) + +pkg/xtools/mkpkg +pkg/xtools/doc/xtools.men +pkg/xtools/doc/xtools.hd +pkg/xtools/skywcs/mkpkg +pkg/xtools/skywcs/skdecode.x +pkg/xtools/skywcs/sksavim.x +pkg/xtools/skywcs/skset.x +pkg/xtools/skywcs/skstat.x +pkg/xtools/skywcs/sktransform.x +pkg/xtools/skywcs/skwrdstr.x +pkg/xtools/skywcs/skwrite.x +pkg/xtools/skywcs/skywcs.h +pkg/xtools/skywcs/skywcsdef.h +pkg/xtools/skywcs/doc/ccsystems.hlp +pkg/xtools/skywcs/doc/skclose.hlp +pkg/xtools/skywcs/doc/skcopy.hlp +pkg/xtools/skywcs/doc/skdecim.hlp +pkg/xtools/skywcs/doc/skdecwcs.hlp +pkg/xtools/skywcs/doc/skdecwstr.hlp +pkg/xtools/skywcs/doc/skenwcs.hlp +pkg/xtools/skywcs/doc/skequatorial.hlp +pkg/xtools/skywcs/doc/skiiprint.hlp +pkg/xtools/skywcs/doc/skiiwrite.hlp +pkg/xtools/skywcs/doc/sklltran.hlp +pkg/xtools/skywcs/doc/sksaveim.hlp +pkg/xtools/skywcs/doc/sksetd.hlp +pkg/xtools/skywcs/doc/skseti.hlp +pkg/xtools/skywcs/doc/sksets.hlp +pkg/xtools/skywcs/doc/skstatd.hlp +pkg/xtools/skywcs/doc/skstati.hlp +pkg/xtools/skywcs/doc/skstats.hlp +pkg/xtools/skywcs/doc/skultran.hlp +pkg/xtools/skywcs/doc/skywcs.hd +pkg/xtools/skywcs/doc/skywcs.hlp +pkg/xtools/skywcs/doc/skywcs.men + Added the skywcs library to the xtools package. Skywcs is a + repackaging of code already used in the images.imcoords package + (10/12/00, Davis). + +pkg/images/lib/coomap.key +pkg/images/lib/geofit.gx +pkg/images/lib/geofit.x +pkg/images/lib/geogmap.gx +pkg/images/lib/geogmap.x +pkg/images/lib/geogmap.h +pkg/images/lib/geograph.gx +pkg/images/lib/geograph.x +pkg/images/lib/geomap.key +pkg/images/lib/liststr.gx +pkg/images/lib/liststr.x +pkg/images/lib/mkpkg +pkg/images/lib/rgccwcs.x +pkg/images/lib/rglltran.x + Added support for a :order command to the geomap task so that the + user can change all the fitting orders simultaneously. Fixed an + error checking bug in the geomap and ccmap tasks that could cause a + segmentation violation if there were too few points for a good fit + and the verbose switch disabled. Added a couple of new routines to + the list decoding tasks. Modified the code and mkpkg to use the new + version of skywcs (10/12/00, Davis). + +pkg/images/immatch/src/geometry/t_geomap.gx +pkg/images/immatch/src/geometry/t_geomap.x + Improved the error checking in the geomap tasks (10/12/00, Davis). + +pkg/images/immatch/src/wcsmatch/t_skyxymatch.x +pkg/images/immatch/src/wcsmatch/mkpkg + Modified the skyxymatch task to use the new skywcs library + (10/12/00, Davis). + +pkg/images/imcoords/imcctran.par +pkg/images/imcoords/doc/imcctran.hlp +pkg/images/imcoords/src/ccfunc.x +pkg/images/imcoords/src/ccxytran.x +pkg/images/imcoords/src/skyctran.x +pkg/images/imcoords/src/t_ccfind.x +pkg/images/imcoords/src/t_ccmap.x +pkg/images/imcoords/src/t_ccsetwcs.x +pkg/images/imcoords/src/t_cctran.x +pkg/images/imcoords/src/t_ccxymatch.x +pkg/images/imcoords/src/t_imcctran.x +pkg/images/imcoords/src/t_skyctran.x +pkg/images/imcoords/src/mkpkg + Modified the imcoords tasks to use the new skywcs library. + Added support for doing coordinate transformations accurately on + images with non-zenithal projections where rotating the CD matrix + does not work accurately. Added a new parameter longpole to the + imcctran task. If longpole =yes then coordinate transformations + with zenithal projections will be rotated using longpole rather + than the CD matrix. (10/12/00, Davis) + +pkg/images/x_images.x +pkg/images/imcoords/imcoords.cl +pkg/images/imcoords/imcoords.men +pkg/images/imcoords/imcoords.hd +pkg/images/imcoords/ccget.par +pkg/images/imcoords/ccstd.par +pkg/images/imcoords/doc/ccget.hlp +pkg/images/imcoords/doc/ccstd.hlp +pkg/images/imcoords/src/mkpkg +pkg/images/imcoords/src/t_ccget.x +pkg/images/imcoords/src/t_ccstd.x +pkg/images/imcoords/src/ccstd.x + Added the ccget and ccstd tasks to the imcoords package. + (10/12/00, Davis) + +dev/hosts + Added RedHat machine camille (11/23/00, MJF) + +pkg/images/tv/display/t_display.x + Changes to detect and use new WCS strings (12/04/00, MJF) + +pkg/images/tv/display/gwindow.h + Added struct element W_WCSVER (12/04/00, MJF) + +pkg/images/tv/display/iis.h + Added definitions for 16-frame support, increased the size of + the SZ_WCSTEXT to 1024 (12/04/00, MJF) + +pkg/images/tv/display/mkpkg +pkg/images/tv/display/imdwcsver.x + + Added a routine which does a WCS query with the X register set + to check whether the server can handle the new WCS strings. If + the reply is "version=<num>" we use the new stuff, otherwise it's + a no-op and we use the old format strings. (12/04/00, MJF) + +sys/imio/imunmap.x + Added a test to see if the image being closed is a pixel mask image + (as opened by impmmap) with the IM_PLCLOSE flag set. If so, the + mask file must be closed at imunmap time. (12/12) + +pkg/images/lib/geomap.h +pkg/images/lib/geogmap.h +pkg/images/lib/geofit.gx +pkg/images/lib/geofit.x +pkg/images/lib/geogmap.gx +pkg/images/lib/geogmap.x +pkg/images/lib/geograph.gx +pkg/images/lib/geograph.x +pkg/images/lib/geomap.key +pkg/images/lib/coomap.key +pkg/images/immatch/geomap.par +pkg/images/immatch/doc/geomap.hlp +pkg/images/immatch/src/geometry/t_geomap.gx +pkg/images/immatch/src/geometry/t_geomap.x +pkg/images/imcoords$ccmap.par +pkg/images/imcoords/src/t_ccmap.x +pkg/images/imcoords/doc/ccmap.hlp + Added a new parameter maxiter to the geomap and ccmap tasks. Maxiter + defines the maximum number of rejection iterations and has a default + value of 0 for no rejection. Changed the default value of the ccmap + and geomap parameter reject from INDEF to 3.0. (05/01/01 LED) + +pkg/dataio/fits/fits_rheader.x + Fixed a bug in the MEF file reading error recovery code that could + case a segvio due to a too many open file descriptors conditions. + (05/01/01 LED) + +pkg/images/immatch/immatch.hd + Fixed a typo in the 'source' definition of imalign.cl (01/31/01 MJF) + +xtools$inlfit.gx +xtools$inlfitr.x +xtools$inlfitd.x +xtools$inlrefit.gx +xtools$inlreffitr.x +xtools$inlrefitd.x + Added a check for the condition case where the number of data points + minus the number of deleted points (i.e. those with weights of 0.0) + is less than the number of fitting parameters. The previous checks did + not task into account the number of deleted points and could produce + solutions that were correct but non-physical. (1/2/01, Davis) + +pkg/images/imcoords/doc/ccmap.hlp + Fixed an error in ccmap help page package definition. (02/09/01 LED) + +pkg/images/tv/display/t_display.x + Removed the code which stripped the path-prefix and section from the + image name displayed in the title string. This was originally done + to save space but confuses tasks like IMEXAM which rely on this to + map the image. (02/26/01, MJF) + +pkg/images/tv/display/iis.h + Somehow the SZ_WCSTEXT value got reset to 320, this was causing a + problem with TVMARK redrawing the display, reset to 1024. + (02/26/01, MJF) + +pkg/images/immatch/src/imcombine/icsetout.x + The physical coordinates of the output WCS are now reset. + (3/1/01, Valdes) + +pkg/images/imgeom/src/t_im3dtran.x +pkg/images/imgeom/src/t_imtrans.x +pkg/images/imgeom/src/t_imshift.x +pkg/images/imgeom/src/t_magnify.x + Modified the im3dtran, imtranspose, imshift, and magnify tasks so that + the output image, which is mapped NEW_COPY, is unmapped before the + input image. To the best of my knowledge this has not caused problems + to date but ... (3/1/01 Davis) + +sys/imio/impmhdr.x + When expanding the text version of the header stored in the PL image, + the newline in column 81 would not be seen when processing a full + line of exactly 80 characters, causing a blank line to be added + to the output image header. (3/05/01 LD,NZ,DT) + +pkg/images/tv/display/t_display.x +pkg/images/tv/display/imdgetwcs.x +pkg/images/tv/display/imdwcsver.x +pkg/images/tv/display/iis.h + Compatability fixes for the new WCS strings and "old" servers. The + WCS version query is now carried out with a read request using the + old WCS data size (320) to avoid blocked reads from old servers not + sending the 1024-char data. imd_getwcs() was modified to query the + server for the version before the actual wcs query and the request + is made with the appropriate size. In the case of a WCS query the + IIS 'x' register is used to signal that the new format is being + used, the WCS version is passed back if the 'y' register is + non-zero. Neither of these registers was used by the old protocol, + the new ximtool checks these registers and responds by using the + correct WCS buffer size. (03/12/01, MJF) + +sys/fio/zzdebug.x + Added new versions (written Aug 2000) of the "server" and "client" + debug tasks, which use the ND driver for fully streaming bidirectional + socket communications. (03/27) + +sys/mwcs/wfsamp.x + Fixed a couple minor bugs having to do with endpoint handling and + saving the last position to speed subsequent searches. Generalized + the code to remove the restriction that both arrays increase in + the same direction. (03/31 FV/DT) + +sys/etc/main.x + Modified the way command line arguments are parsed to make it easier + to set the value of a string parameter to the null string. If a + string parameter is set on the command line, e.g., "param=value", + whitespace is no longer permitted between the = and the value + string. Hence, in command line such as [a=foo b= c=bar] will be + treated the same as [a=foo b="" c=bar]. Whitespace is still + skipped in @par files as before. (03/31) + +sys/clio/clcache.x +sys/fmtio/clscan.x + 1. Modified the private internal system routine clc_fetch, which + fetches parameters from the in-task parameter cache, to return ERR if + a parameter is not found rather than zero. This makes it possible + to discriminate between parameters that have not been set, and ones + which have had the value string set to the null string. + 2. Modified clscan (called whenever a task gets a string-valued + parameter) to check the status returned by clc_fetch for ERR rather + than <=0 and to prompt for the parameter only if ERR (value not set) + is returned. + + Note - These changes have some risk and could affect existing + scripts. Only tasks with parameters that have null string or + uninitialized values should be impacted. Testing using irafx is + required. (03/31) + +sys/imio/db/imgnfn.x + The code which scans a header looking for keywords which match a + pattern was not skipping to the next card correctly when skipping + non-keyword cards (blank cards, COMMENT, HISTORY, etc.). (03/31) + +pkg/images/tv/display/dspmmap.x + Fixed problems with ds_match. The new version is more robust and + correct. A bad pixel for the displayed image is the maximum of all + pixels in the pixel mask which fall within the display pixel. This + version still does not allow any relative rotations but does allow + non-integer offsets. (4/24/01, FV) + +images$imutil/hedit.par +images$imutil/doc/hedit.hlp +images$imutil/src/hedit.hlp + Added a new addonly parameter to the hedit task. If addonly is set + a new field will only be added to the image header if it does not + already exist. (4/30/01, Davis) + +images$immatch/src/psfmatch/rgpfilter.x +images$immatch/src/psfmatch/rgpconvolve.x + Fixed a floating point error in the replace algorithm gaussian fitting + routine that can occurs if the FFT of the reference image is exactly + zero. Also fixed a symmetry error in the psfmatch convolve routine + that would results in a corrected psf that is flipped in x and y if + the psf matching kernel does not have mirror symmetry. The workaround + and bug fix is to rotate the convolution kernel 180 degrees before + applying it to the input image in that case. The matching kernel is + is correctly oriented and can be used directly with the fconvolve + task. (5/15/01 Davis) + +dataio$fits/t_rfits.x +dataio$imtext/t_rtextimage.x + Changed the clgetc calls o clgstr calls for the datatype parameter + (rfits task) and otype parameter (rtextimage. task) This change is + required to avoid an "ERROR: Parameter not a legal character constant + (parname)" error introduced by recent changes to the CL. "" is no + longer a legal argument for clgetc. (6/15/01 LED) + +images$immatch/src/imcombine/t_combine.x +images$immatch/src/imcombine/icombine.gx +images$immatch/src/imcombine/icgdata.gx +images$immatch/src/imcombine/icscale.x +images$immatch/src/imcombine/xtimmap.x + +images$immatch/src/imcombine/mkpkgx + When combining more images than there are IRAF FIO descriptors the + additional images are mapped and unmapped as needed. There is no + limit now on the number of images or that they be capable of being + stacked into a single image for combining by projection. The creation + of a temporary stack image is no longer done. (6/16/01, Valdes) + +images$imgeom/src/t_magnify.x + Fixed a bug in the magnify task that could cause a previous block + of lines to be repeated instead of a new block computed. This bug + was introduced when magnify was upgraded to use the new sinc / drizzle + interpolation code and to use imio boundary extension (IRAF 2.11.2). A + typo was made in the update which results the above error in the case + where the buffer does not update. Normally the buffer is supposed to + update for each group of lines but occasionally may not to integer + conversions, especially in the case that the magnification factors are + greater than the internal buffer size of 16 output image lines. + (6/21/01, Davis) + +pkg/images/tv/display/imdgetwcs.x +pkg/images/tv/display/imdputwcs.x +pkg/images/tv/display/imdsetwcs.x + Modified to allow read/write of the additional mapping information + during WCS i/o. If the iis_version flag is non-zero and a valid + mapping exists, the set/put wcs routines will automatically format + the WCS text to include this information, otherwise it writes the old + WCS text. If iis_version is non-zero and a server query returns mapping information this will be stored in the iis common for later retrieval + by the imd_getmapping() routine. (06/21/01, MJF) + +pkg/images/tv/display/imdwcsver.x + Removed 'frame' number argument form the procedure. The procedure + will now map frame one if no connection is already opened and query + the WCS. Returns non-zero if the server is capable of using the new + mapping structures. Required to be called explicitly by programs + using mappings to initialize the imd interface for this functionality. + A "disable_wcs_maps" boolean environment variable may be defined to + force this procedure to return zero if the old behavior is desired or + to workaround bugs in the new code. (06/21/01, MJF) + +pkg/images/tv/display/t_display.x + Removed earlier addition of ds_setwcs() function since this is now + handled by the standard imd_putwcs() interface. Mapping information + is set prior to the WCS write with imd_setmapping(). (06/21/01, MJF) + +pkg/images/tv/display/mkpkg + Updated dependencies (06/21/01, MJF) + +pkg/images/tv/display/imdmapping.x + + New routines imd_[sg]etmapping() allow a program to set the + mapping to be sent with the next imd_putwcs() call, or retrieve the + mapping info sent by the server with the last wcs query. The calls + are no-ops if the connected server doesn't know about the new + mappings, imd_getmapping() is an integer function which returns + non-zero if a valid mapping is available. A new imd_query_map() is + available to return the mapping information for a given WCS number. + The intent is that the mapping can be obtained for a wcs returned by a + cursor read, e.g. to get the image name associated with the mapping. + (6/21/01, MJF) + +pkg/images/tv/display/iis.com + Added new variables to the IIS common to hold the mapping + information for each WCS write. In order to preserve the imd inter- + faces it was necessary to save the mappings in the common, along with + a flag indicating whether the connected server can use them. + (06/21/01, MJF) + +pkg/images/tv/display/iisopn.x + Added initialization of the iis_version value at device open time + (6/21/01, MJF) + +pkg/images/tv/display/gwindow.h + Removed struct element W_WCSVER added earlier, no longer needed. + (6/21/01, MJF) + +pkg/images/tv/display/mkpkg +pkg/images/tv/display/t_display.x + Removed unused include files leftover from debugging. (7/2/01, MJF) + +pkg/lists/rimcursor.x + Modified to return actual WCS code. Previously hardwired with '01' + following the frame number. (7/3/01, MJF) + +dev/hosts + Changed equuleus to be a Solaris machine, added entry for it's + new incarnation as 'new-equuleus'. (7/6/01, MJF) + +pkg/system/cmdstr.x + Modified to handle the case of a redirected parameter value in + the input stream. (7/11/01, MJF) + +pkg/images/imcoords/src/t_ccmap.x + Fixed a bug in the ccmap task refpoint = "coords" option that could + produce a totally inaccurate tangent point estimate if the input + coordinate list spanned ra = 0.0 hours. (7/20/01, LED) + +pkg/images/tv/tvmark/t_tvmark.x + Added a call to imd_wcsver() to reset the 'frame' parameter max so + task can use all 16 frames (8/9/01, MJF) + +pkg/images/tv/display/imdgetwcs.x + Fixed a small bug in parsing the WCS return string, could sometimes + cause the WCS to be reset. (8/9/01, MJF) + +pkg/images/tv/display/imdwcsver.x + Initialized the iis_valid variable (8/9/01, MJF) + +pkg/plot/doc/contour.hlp + Clarified the use of the 'fill' parameter in the example when + overlaying contours to an image display. (08/10/01, MJF) + +pkg/images/tv/imexamine/mkpkg +pkg/images/tv/imexamine/x_imexam.x + +pkg/images/tv/imexamine/imexamine.par + + Added a mkpkg target to compile standalone; i.e. mkpkg standalone. + (8/13/01, Valdes) + +pkg/images/tv/imexamine/iecimexam.x +pkg/images/tv/imexamine/ieeimexam.x +pkg/images/tv/imexamine/iegcur.x +pkg/images/tv/imexamine/iegimage.x +pkg/images/tv/imexamine/iegnfr.x +pkg/images/tv/imexamine/iehimexam.x +pkg/images/tv/imexamine/ieimname.x +pkg/images/tv/imexamine/iejimexam.x +pkg/images/tv/imexamine/ielimexam.x +pkg/images/tv/imexamine/ieopenlog.x +pkg/images/tv/imexamine/ieqrimexam.x +pkg/images/tv/imexamine/ierimexam.x +pkg/images/tv/imexamine/iesimexam.x +pkg/images/tv/imexamine/ietimexam.x +pkg/images/tv/imexamine/ievimexam.x +pkg/images/tv/imexamine/imexam.h +pkg/images/tv/imexamine/t_imexam.x + IMEXAMINE has been modified to use multiple WCS mappings. The + full WCS number is now used. Based on the WCS number the image + associated with the mapping determines the image to examine. + This requires a display server which supports multiple mappings, + such as XIMTOOL V1.3, and a display tasks which uses + multiple mappings, such as MSCRED V4.5. For single displays and + other display servers it behaves as before. + (8/13/01, Valdes) + +pkg/obsolete/obsolete.cl +pkg/obsolete/obsolete.men +pkg/obsolete/obsolete.hd +pkg/obsolete/x_obsolete.x +pkg/obsolete/mkpkg +pkg/obsolete/odisplay.par - +pkg/obsolete$doc/odisplay.hlp - +pkg/obsolete$display/ - + Removed ODISPLAY task. (8/17/01, Valdes) + +pkg/obsolete/obsolete.cl +pkg/obsolete/obsolete.men +pkg/obsolete/obsolete.hd +pkg/obsolete/x_obsolete.x +pkg/obsolete/mkpkg +pkg/obsolete/oimcombine.par + +pkg/obsolete$doc/oimcombine.hlp + +pkg/obsolete$imcombine/ + + Added OIMCOMBINE from V2.11.3b. (8/17/01, Valdes) + +pkg/images/immatch/src/imcombine +pkg/imagess/immatch/imcombine.par +pkg/imagess/immatch/doc/imcombine.hlp + 1. New parameters "headers", "bpmasks", "rejmasks", "nrejmasks", + and "expmasks" provide additional types of output. The old + parameters "rejmask" and "plfile" were removed. The new + "nrejmasks" parameter corresponds to the old "plfile" and the + new "rejmasks" parameter corresponds to the old "rejmask". + 2. There is a new "combine" type "sum" for summing instead of + averaging the final set of offset, scaled, and weighted + pixels. + 3. There is a new parameter "outlimits" to allow output of a + subregion of the full output. This is useful for raster + surveys with large numbers of images. + 4. Additional keywords may appear in the output headers. + 5. The scaling is now done relative to the first image rather than + an average over the images. This is done so that flux related + keywords such as exposure time and airmass remain + representative. + 6. The environment parmaeter "imcombine_option" allows using an + algorithm that opens and closes images. This is very slow but + allows combining large numbers of images which are not the same + size. + 7. New help page. + (8/17/01, Valdes) + +lig/pkg/cq.h +pkg/xtools/catquery/ +pkg/xtools/mkpkg +pkg/xtools/cq.h +pkg/xtools/cqdef.h +pkg/xtools/cqdb.x +pkg/xtools/cqdtype.x +pkg/xtools/cqget.x +pkg/xtools/cqgfields.x +pkg/xtools/cqgqpars.x +pkg/xtools/cqgrecords.x +pkg/xtools/cqiminfo.x +pkg/xtools/cqimquery.x +pkg/xtools/cqistat.x +pkg/xtools/cqlocate.x +pkg/xtools/cqmap.x +pkg/xtools/cqnqpars.x +pkg/xtools/cqquery.x +pkg/xtools/cqrinfo.x +pkg/xtools/cqrstat.x +pkg/xtools/cqsetcat.x +pkg/xtools/cqsqpars.x +pkg/xtools/cqstat.x +pkg/xtools/cqwrdstr.x +pkg/xtools/doc/*.hlp + Added the catalog and image survey access tools and documentation to + the XTOOLS package. (8/27/01, Davis) + +pkg/obsolete/obsolete.cl +pkg/obsolete/obsolete.men +pkg/obsolete/obsolete.hd +pkg/obsolete/x_obsolete.x +pkg/obsolete/mkpkg +pkg/obsolete/oimstatistics.par +pkg/obsolete/oimstat.h +pkg/obsolete/t_oimstat.x +pkg/obsolete/doc/oimstat.hlp + Added OIMSTATISTCS from V2.11.3b. (8/30/01, Davis) + +pkg/images/imutil/imstatistics.par +pkg/images/imutil/doc/imstatistics.hlp +pkg/images/imutil/src/imstat.h +pkg/images/imutil/src/t_imstat.x + Added an interative rejection capability to the imstatistics task. Also + added a cacheing option that may speed up the performance of the task + if the midpt/mode statistic is computed or if iterative rejection + is enabled. (8/30/01, Davis) + +pkg/xtools/catquery/cqgfields.x +pkg/xtools/catquery/cqquery.x + Fixed an incorrect function and data type declaration in the + catquery library which showed up when compiling on Linux. + (9/17/01, Davis) + +pkg/images/imutil/src/t_imjoin.x + Changed the clgetc call to clgstr calls for the pixtype parameter in + imjoin. This change is required to avoid an "ERROR: Parameter not a + legal character constant (parname)" error introduced by recent changes + to the CL. Basically "" is no longer a legal argument for clgetc. + (9/17/01 LED) + +pkg/proto/mimstatistics.par +pkg/proto/doc/mimstat.hlp +pkg/proto/masks/mimstat.h +pkg/proto/masks/t_mimstat.h +pkg/proto/masks/mstcache.x +pkg/proto/masks/mimstat.x +pkg/proto/masks/mptools.x + Installed the new statistics through a mask task mimstatistics in the + proto package. (09/17/01, Davis) + +lib/pkg/pstools.h + +pkg/xtools/pstools/Notes + +pkg/xtools/pstools/font.com + +pkg/xtools/pstools/mkpkg + +pkg/xtools/pstools/psbreak.x + +pkg/xtools/pstools/pscenter.x + +pkg/xtools/pstools/psclose.x + +pkg/xtools/pstools/psdeposit.x + +pkg/xtools/pstools/psfont.x + +pkg/xtools/pstools/psjustify.x + +pkg/xtools/pstools/psopen.x + +pkg/xtools/pstools/psoutput.x + +pkg/xtools/pstools/pspos.x + +pkg/xtools/pstools/psprolog.x + +pkg/xtools/pstools/pssetup.x + +pkg/xtools/pstools/pswidth.x + + Added a new interface library for doing Postscript text output. + This is used by the lroff conversion code but is useful for any + application which needs to output blocks of text in a similar + manner. Because of the var- iable-width font used in the prolog it + is not that useful for producing tabular output. (09/17/01, MJF) + +pkg/proto/rskysub.par +pkg/proto/doc/rskysub.hlp +pkg/proto/masks/rskysub.h +pkg/proto/masks/t_rskysub.x +pkg/proto/masks/rsstats.x +pkg/proto/masks/rsmean.x +pkg/proto/masks/rsmmean.x +pkg/proto/masks/rscache.x +pkg/proto/masks/rsfnames.x +pkg/proto/masks/rsreject.x + Installed the new running mean or median sky subtraction task rskysub + in the proto package. (9/18/01, LED) + +pkg/images/imcoords/src/t_skyctran.x +pkg/images/imcoords/src/t_sffind.x +pkg/images/imfilter/src/mode.x +pkg/images/imutil/doc/hedit.hlp +pkg/images/imutil/doc/imdivide.hlp +pkg/images/tv/doc/Tv.hlp +pkg/images/tv/iis/doc/Cv.hlp +pkg/images/tv/iis/doc/cv.hlp +pkg/mage/tv/iis/ids/doc/Imdis.hlp + Fixed various missing/extra argument problems in the images package + code that were found with spplint. Also fixed miscellaneous images + package help page formatting problems. (9/19/01 Davis) + +pkg/plot/crtpic/t_crtpict.x +pkg/plot/crtpic/plotimage.x +pkg/plot/t_graph.x +pkg/plot/t_implot.x + Fixed various missing/extra argument and function/subroutine mismatch + problems in the plot package that were found by running spplint. + (9/19/01, Davis) + +pkg/proto/t_suntoiraf.x +pkg/proto/t_binfil.x +pkg/proto/t_hfix.x +pkg/proto/t_joinlines.x +pkg/proto/doc/irafil.hlp + Fixed various extra/missing argument, function declaration, and + subroutine/function mismatchs in the proto package that were + found with spplint. Also fixed an irafil task help page formatting + problem. (9/19/01, Davis) + +pkg/xtools/skywcs/doc/skdecim.hlp +pkg/xtools/skywcs/doc/skequatorial.hlp +pkg/xtools/skywcs/doc/sklltran.hlp +pkg/xtools/skywcs/doc/skultran.hlp +pkg/xtools/skywcs/doc/skywcs.hlp +pkg/xtools/catquery/doc/catquery.hlp +pkg/xtools/catquery/doc/cqsqpar.hlp +pkg/xtools/catquery/doc/cqsqparn.hlp + Fixed various formatting problems in the skywcs and catquery library + help pages. (19/09/01, Davis) + +pkg/lists/doc/Lcalc.hlp +pkg/lists/doc/Lcalc.hlp +pkg/lists/doc/Lists.hlp +pkg/lists/doc/unique.hlp +pkg/lists/doc/average.hlp + Fixed various formatting problems in the lists package help files. + (19/09/01, Davis) + +mkpkg + Added architecture entries for LinuxPPC (linuxppc) and MacOSX + (macosx) to the root iraf mkpkg file. (9/25) + +unix/hlib/libc/iraf.h +unix/hlib/libc/stdarg.h + + Added a new LIBC include <stdarg.h>. This is the successor to + <varargs.h>, which is no longer supported on all platforms + (MacOSX). If a C file defines "import_stdarg" then <stdarg.h> will + be included. If this file defines USE_STDARG then the stdargs + mechanism for handling variable arguments lists should be used in + the code, otherwise the older varargs mechanism should be used (they + are NOT the same). Unfortunately it is necessary to #ifdef the code + to do this as variable argument handling has to be done at compile + time and only one version can be used; nonetheless the code will be + just as portable and platform independent as always. (9/25) + +pkg/cl/errs.c +pkg/cl/clprintf.c + Modified these files to use STDARG. (9/25) + +sys/libc/scanf.c +sys/libc/printf.c +sys/libc/sprintf.c +sys/libc/eprintf.c + Modified these files to use STDARG. (9/25) + +unix/mkpkg [pcix] + Added some comments on what version of F2C is used and where the + sources are maintained. (9/25) + +unix/as.macosx [pcix] + +unix/boot.macosx [pcix] + + Added AS and HBIN directories for the MacOSX port. (9/25) + +unix/boot/bootlib/ostime.c [pcix] +unix/os/gmttolst.c [pcix] + These routines were modified to use the cmtime.gmtime routine + to get the GMT offset. Required for MacOSX. ftime() is + normally used: while MacOSX has a manpage for this and says it + is in libcompat.a, there is no libcompat.a. gmtime() is probably + the more modern routine anyway, and perhaps we should move to + it for most platforms. (9/25) + +unix/boot/mkpkg/host.c [pcix] + In h_rebuildlibrary, added a call to resolvefname() so that + ranlib is passed an actual filename rather than a symbolic + link. (9/25) + +unix/boot/spp/xc.c [pcix] + Various changes to support MacOSX. (9/25) + +unix/boot/spp/xpp/xppcode.c + Added explicit initialization for the variable nstrings to fix a + runtime SPP compiliation problem seen on MacOSX. (9/25) + +unix/hlib/install [pcix] +unix/hlib/cl.csh [pcix] +unix/hlib/fc.csh [pcix] +unix/hlib/irafuser.csh [pcix] +unix/hlib/mkpkg.inc [pcix] +unix/hlib/mkpkg.sf.MACX [pcix] +unix/os/irafpath.c [pcix] + The usual minor changes to support a new platform, in this case + MacOSX. (9/25) + + +unix/os/zfchdr.c [pcix] +unix/os/zfgcwd.c [pcix] +unix/os/zglobl.c [pcix] + Moved the global variable oscwd to zglobl.c to avoid a linker + problem seen on MacOSX. (9/25) + +unix/os/zfioks.c [pcix] + MacOSX does not provide REXEC (it is in libcompat.a) so the KS + driver was modified to conditionally use RCMD instead. This routine + replaces the very old REXEC and should probably be used on most + platforms in any case. A USE_RCMD define was added at the top + of the file to select which routine is used on each platform. + (/9/25) + +unix/os/zxwhen.c [pcix] + Added support for MacOSX, which does not fully support the + modern sigaction, used for signal handling on most platforms + these days. (9/25) + +pkg/images/tv/imedit/epimcopy.x + Added a missing TY_USHORT branch to the image copy case statement. + (10/10 LED) + +pkg/system/help/hinput.x + Added a missing sfree before return. (10/10/01, MJF) + +pkg/system/help/houtput.x + ttyclear() was being called as a function, changed to call as a + subroutine. (10/10/01, MJF) + +pkg/system/help/prhelp.x + Added some extra braces around complex if statements. (10/10/01, MJF) + +pkg/system/help/help.h +pkg/system/help/t_help.x +pkg/system/help/t_lroff.x +pkg/system/help/prblkhdr.x +pkg/system/help/prhlpblk.x + Added new code to permit text/html/ps output options. Additional + code to handle standout mode properly. (10/10/01, MJF) + +pkg/xtools/mkpkg +lib/pkg/pstools.h + +pkg/xtools/pstools/Notes + +pkg/xtools/pstools/font.com + +pkg/xtools/pstools/mkpkg + +pkg/xtools/pstools/psbreak.x + +pkg/xtools/pstools/pscenter.x + +pkg/xtools/pstools/psclose.x + +pkg/xtools/pstools/psdeposit.x + +pkg/xtools/pstools/psfont.x + +pkg/xtools/pstools/psjustify.x + +pkg/xtools/pstools/psopen.x + +pkg/xtools/pstools/psoutput.x + +pkg/xtools/pstools/pspos.x + +pkg/xtools/pstools/psprolog.x + +pkg/xtools/pstools/pssetup.x + +pkg/xtools/pstools/pswidth.x + + Added a new interface library for doing Postscript text output. + This is used by the lroff conversion code but is useful for any + application which needs to output blocks of text in a similar + manner. (10/10/01, MJF) + +pkg/system/help/t_lroff.x +pkg/system/help/lroff.par + Added a new 'format' parameter and code to permit output of HTML + or Postscript. (10/10/01, MJF) + +pkg/system/help/lroff/mkpkg +pkg/system/help/lroff/lroff.h +pkg/system/help/lroff/lroff.x +pkg/system/help/lroff/nofill.x +pkg/system/help/lroff/nextcmd.x +pkg/system/help/lroff/lroff2ps.x + +pkg/system/help/lroff/lroff2html.x + + Added new converter code to create HTML or formatted Postscript from + lroff source. (10/10/01, MJF) + +pkg/system/help/t_help.x + Task was modified to call the XHELP code to run the GUI version of + the task if requested. Task output is the same if the device + remains the default 'terminal' value, however resetting the 'device' + parameter to one of 'gui', 'html', or 'ps' will either spawn the GUI + task under xgterm or print the converted help page to the stdout. + (10/10/01, MJF) + +lib/pkg/help.gui + +lib/pkg/help.html + +pkg/system/help/mkpkg +pkg/system/help/xhelp/ + +pkg/system/help/xhelp/help.gui + +pkg/system/help/xhelp/mkpkg + +pkg/system/help/xhelp/xhcmds.x + +pkg/system/help/xhelp/xhdir.x + +pkg/system/help/xhelp/xhelp.h + +pkg/system/help/xhelp/xhelp.par + +pkg/system/help/xhelp/xhelp.x + +pkg/system/help/xhelp/xhfiles.x + +pkg/system/help/xhelp/xhhelp.x + +pkg/system/help/xhelp/xhinit.x + +pkg/system/help/xhelp/xhofile.x + +pkg/system/help/xhelp/xhpkg.x + +pkg/system/help/xhelp/xhprint.x + +pkg/system/help/xhelp/xhqref.x + +pkg/system/help/xhelp/xhroot.x + +pkg/system/help/xhelp/xhsave.x + +pkg/system/help/xhelp/xhsearch.x + +pkg/system/help/xhelp/xhsort.x + +pkg/system/help/xhelp/zzdebug.x + + Installed GUI help support code. Slight modifications from the + stand-alone XHELP task were required, almost entirely in the task + main. Various bugs were fixed in the task initialization which + prevented repeated executions from displaying the correct package + information. (10/10/01, MJF) + +pkg/system/help/houtput.x + Removed an unused 'junk' variable. (10/10/01, MJF) + +pkg/system/phelp.cl +pkg/system/references.cl + Hardwired the 'device' parameter to be 'terminal' (10/10/01, MJF) + +lib/pkg/scr/help.gui + Numerous bug fixes and consistency tweaks to the GUI file. + (10/10/01, MJF) + +pkg/system/help/xhelp/xhsave.x + Added missing file descriptors to fprintf() calls. (10/10/01, MJF) + +pkg/system/help/xhelp.x + Removed an unused clgeti() declaration. (10/10/01, MJF) + +pkg/system/pathnames.x + Added a missing SZ_LINE arg to a gargstr() call. (10/10/01, MJF) + +pkg/system/protect.x +pkg/system/unprotect.x + protect() was being called as a subroutine, changed to be a call to + an int function as defined. (10/10/01, MJF) + +pkg/system/help/prhlpblk.x + Fixed a Postscript initialization bug which was preventing files from + being formatted as PS with the proper header. (10/10/01, MJF) + +pkg/system/help/lroff/lroff.x + Fixed a bug in the new .hr directive preventing the text from being + passed through to the output in the case of non-HTML. (10/10/01, MJF) + +pkg/xtools/mkpkg +lib/pkg/pstools.h - +pkg/xtools/pstools/Notes - +pkg/xtools/pstools/font.com - +pkg/xtools/pstools/mkpkg - +pkg/xtools/pstools/psbreak.x - +pkg/xtools/pstools/pscenter.x - +pkg/xtools/pstools/psclose.x - +pkg/xtools/pstools/psdeposit.x - +pkg/xtools/pstools/psfont.x - +pkg/xtools/pstools/psjustify.x - +pkg/xtools/pstools/psopen.x - +pkg/xtools/pstools/psoutput.x - +pkg/xtools/pstools/pspos.x - +pkg/xtools/pstools/psprolog.x - +pkg/xtools/pstools/pssetup.x - +pkg/xtools/pstools/pswidth.x - + The XTOOLS library is not built until after the SYSTEM executable + and so the PSTOOLS library that the new HELP depends upon was not + being found. PSTOOLS was elevated to be a new SYS interface, PSIO, + and so was deleted from the XTOOLS library. (10/12/01, MJF) + +lib/psio.h + +sys/psio/ + +sys/psio/README + +sys/psio/font.com + +sys/psio/mkpkg + +sys/psio/psbreak.x + +sys/psio/pscenter.x + +sys/psio/psclose.x + +sys/psio/psdeposit.x + +sys/psio/psfont.x + +sys/psio/psio.h + +sys/psio/psjustify.x + +sys/psio/psopen.x + +sys/psio/psoutput.x + +sys/psio/pspos.x + +sys/psio/psprolog.x + +sys/psio/pssetup.x + +sys/psio/pswidth.x + +sys/psio/zzdebug.x + + Added a new interface library for doing Postscript text output. + This is formerly the PSTOOLS library and is used by the lroff + conversion code but is useful for any application which needs to + output blocks of text. The README file explains the interface. + (10/12/01, MJF) + +pkg/system/mkpkg +pkg/system/help/lroff/mkpkg +pkg/system/help/lroff/lroff2ps.x + Removed the -lxtools flag from the system link line, small code + modification to make use of <psio.h> (10/12/01, MJF) + +unix/hlib/zzsetenv.def + Added a new 'pspage' variable which is used by the PSIO interface to + set the default page size. Acceptable values include "letter" (the + default) for US Letter, "legal" for US Legal, and "a4" and "b5" for + the most common European sizes. Pspage can be used by the new HELP + and LROFF tasks to automatically set the desired Postscript page + size. (10/12/01, MJF) + +lib/psio.h - +lib/psset.h + +sys/psio/psio.h + +sys/psio/* + Various minor tweaks to the PSIO code for consistency. The private + and public parts of the interface were split into a psio.h include + for the interface, and psset.h for applications. (10/14/01, MJF) + +pkg/system/help/lroff/mkpkg +pkg/system/help/lroff/lroff2ps.x + Changed <psio.h> to <psset.h>. (10/14/01, MJF) + +lib/scr/help.gui + Minor bug fixes to the HELP GUI. (10/14/01, MJF) + +dev/hosts + Updated hohokam's irafks path for GONG. (10/15/01, MJF) + +sys/mkpkg + Added an entry for PSIO. (10/15) + +pkg/images/immatch/src/xregister/rgxicorr.x +pkg/images/immatch/src/xregister/rgxcolon.x +pkg/images/immatch/src/xregister/rgxtools.x + Fixed a bug in the xregister multiple region handling code that was + preventing xregister from computing x-correlations on regions beyond + the first in interactive mode. (10/17/01, LED) + +dev/hosts + Added solaris machines nebula and bobcat. (10/30/01, MJF) + +pkg/images/imutil/src/imheader.x + Fixed imheader so it prints out an image size of 0 if IM_NDIM(im) is + is 0 instead of the contents of the first element of the IM_LEN(im,1) + vector which may be non-zero. (11/05/01, Davis) + +pkg/images/imutil/src/hedit.x +pkg/images/imutil/doc/hedit.hlp + For backwards compatability modified the precedence of the operator + switches from addonly / add / delete to add / addonly / delete. + Addonly is a new switch which adds a keyword only if it is not + already there. Also clarified the switch precedence rules in the + help page. (11/13/01, Davis) + +lib/plset.h +sys/plio/README +sys/plio/mkpkg +sys/plio/plsten.x +sys/plio/plsectne.x +sys/plio/plsectnc.x +sys/plio/plrop.x +sys/plio/plrio.x +sys/plio/plregrop.x +sys/plio/plpoint.x +sys/plio/plplr.gx +sys/plio/plplp.gx +sys/plio/plplls.x +sys/plio/pllinene.x +sys/plio/plglr.gx +sys/plio/plglp.gx +sys/plio/plglls.x +sys/plio/placcess.x +sys/pmio/pmaccess.x +sys/pmio/pmplls.x + The pl_access routine (which is private to the PLIO interface) + was changed to return a pointer to the line list rather than an + offset into the PLIO data buffer. A new routine pl_reference() + was added to do what pl_access used to do. All the affected + PLIO and PMIO code was updated (nearly all instances wanted the + pointer instead of the buffer offset). + + This change makes pl_access usable by external code, which has + no (legal) way to do anything with internal references to the + PLIO descriptor. (12/03) + +sys/plio/pllen.x + Added a new PLIO routine pl_llen(), which returns the length of + an encoded line list. (12/03) + +sys/plio/plemptyline.x + Added a new routine to return a pointer to the "emptyline" line + list for a mask. This can be used in conjunction with the newly + modified pl_access to check for a pointer to the empty line. + Applications should rarely need to do this, but it is needed in the + FITS kernel to compress empty lines, i.e., make the lines in the + FITS verfsion of the mask all point to the same "emptyline" line + list. (12/03) + +sys/fmtio/evvexpr.gy + Added support for the bitwise boolean operators: '&' (and), '|' (or), + '^' (xor), and '~' (not/complement). These can be used only with + integer type operands (short, int, long) and will return a result + of the same type, like an arithmetic operator, with the usual type + promotion semantics. (12/03) + +pkg/images/imutil/doc/imexpr.hlp + Added the new bitwise boolean operators to the operator list. (12/04) + +sys/ki/ki.h + Increased MAX_NODES (the max nodes in a local network for IRAF + networking) from 320 to 512. (12/04) + +sys/ki/kbzstt.x + Fixed some typos; no functional changes. (12/04) + +pkg/images/immatch/src/imcombine/src/icscale.x + Fixed a normalization bug. (12/04]) + +unix/hlib/config.h +unix/hlib/libc/libc.h + Increased FIO_MAXFD (the max number of open files in FIO) from + 256 to 4096. This is the "hard limit" on the maximum number of + open files in an IRAF process. + + Analysis of the FIO code indicates that there isn't any serious + efficiency issue here: there are only a few cases where a linear + search of the file list is performed, and these do not impact normal + usage. During i/o to a file there is no affect all since access via + a file descriptor is direct. The is some impact on file descriptor + allocation at file open time, however this only has an impact in + cases where there are many open files (if 4000 files are open 4001 + file descriptors may have to be examined to find the next open + slot). Such cases are unusual however, and in such a case however, + performance is likely to be governed by much more important + factors. + + The biggest impact of increasing the number of FIO descriptors is + static allocation of BSS storage (data memory space allocated when a + process is spawned). This is only about 100KB per process for 4096 + descriptors. This would have been an issue once, but is not + important today where even everyday PCs have hundreds of megabytes + of memory. (12/04) + +unix/shlib/mkshlib.sos4 +unix/shlib/mkshlib.ssol + It turns out that the FIO common (FIOCOM) is explicitly referenced + in the Sun/IRAF shared image. The parameters FIOCOMSZ, XERCOMSZ, + TOTCOMSZ, and CMSZ (rouned up to an integral number of pages) must + all agree with the actual commons. The new values are as follows: + + FIOCOMSZ = 0x24660 + XERCOMSZ = 0x810 + TOTCOMSZ = 0x24e70 + CMSZ = 0x26000 + + (12/04) + +sys/vops/awvg.gx + Changed the way the computation was done so that the value MEAN + is not forced to float when working on float data. It is replaced + by the expression (sum/ngpix) so that the computation is all done + in double precision internally. (12/04) + +unix/hlib/libc/kernel.h + 1. Increased MAXOFILES, the maximum number of host level open files, + from 64 to 256. This is the maximum number of files that can be + simultaneously open at the host level. It determines the maximum + number of files that can be simultaneously open by an IRAF process + in the usual case - that is, when FCLOSEFD is not explicitly set on + open files by the IRAF task (if FCLOSEFD is used, up to FIO_MAXFD + files may be open at the IRAF level). The actual maximum number + open files may be less if the host system imposes a lower limit. + For example, the default limit is 64 on SUNOS and Solaris systems. + On PC Unix systems it is much higher. Even on systems that impose + a lower limit by default, the "limit" shell command may often be + used to increase the limit. + + 2. Increased the following "optimum" buffer sizes: + + BF_OPTBUFSIZE 32768 -> 65536 (binary files) + SF_OPTBUFSIZE 32768 -> 65536 + KS_OPTBUFSIZE 4096 -> 65536 (iraf networking) + PR_OPTBUFSIZE 4096 -> 65536 (interprocess comm.) + ND_OPTBUFSIZE 4096 -> 65536 (network driver) + + 3. Removed the maximum buffer size limits for the PR and ND + devices. These were formerly set to 4096. 4K used to be the + system buffer size for devices like pipes, however that was a + long time ago and I don't know if it is still the case. Probably + not, and it doesn't matter anyway so long as a pipe doesn't + circle back on itself. This probably won't affect performance + much, but it could, especially for ND connections which can carry + a lot of traffic. + + The KS limit was already set to 0. Since the KI and binary device + limits are already 0, this means that large transfers can be used on + IRAF networking connections, e.g., for image access. Large transfers + (100K or larger) are needed to achieve the high bandwidth provided + by modern Fast Ethernet or Gigabit Ethernet network interfaces. + We should do some tests at some point to see if we can get high + performance for remote kernel server image access using fast + networking and the new version of IRAF. Potentially, accessing + images in this way could be as fast or faster than accessing them + on a local hard disk. (12/04) + +lib/imio.h +lib/imset.h +sys/imio/immapz.x +sys/imio/imsetbuf.x +sys/imio/imseti.x +sys/imio/imstati.x + The following changes were made to enable IMIO to use larger + buffer sizes to optimize i/o for large images. + + The default file buffer size set by IMIO is unchanged: it is still + about 512 MB, the value set for V2.11.2. However, a new parameter + IM_BUFFRAC was added. Both IM_BUFSIZE and IM_BUFFRAC are used to + help determine the FIO buffer size set when an image is opened. + The logic for this is implemented in imsetbuf.x. + + Backwards compatibility. If you do nothing about IMIO/FIO buffers + in your program, the system may transparently use a larger buffer + for larger images. If you set BUFSIZE in your program, the system + will by default use the value you give, or possibly a larger value, + if the image you are accessing is very large. If you set BUFSIZE + and you want to guarantee that the value you set is used (even + for very large images) then you should also set BUFFRAC=0 to ensure + that only BUFSIZE is used. + + How it works. BUFFRAC specifies the default FIO buffer size used to + access an image, expressed as a percentage of the size of the + image. For example, the builtin default value of BUFFRAC=10 will + try to make a FIO buffer 10% of the size of the image. The actual + value used will be given by BUFFRAC, but will be at least BUFSIZE, + and no more than a builtin default maximum value, currently 32 MB. + Given the builtin defaults, the buffer size will range from 0.5 to + 32 MB depending upon the size of the image being accessed. As noted + above, BUFSIZE and BUFFRAC can be set to force the buffer size to a + specific value if desired. + + Environment variables for both parameters are provided. The names + are "IMIO_BUFSIZE" and "IMIO_BUFFRAC". If specified, these override + (at image open time) the builtin default values for both + parameters. An IMSET call by the application will override all such + defaults. + + The FIO buffer allocated will not be larger than the size of the + image. The FIO buffer will also not exceed the maximum size set by + the file driver being accessed. For example, for PLIO images the + file buffer will not exceed about 2KB, even for a very large mask. + This is because the "pixel file" for a PLIO image is dev$null, the + driver for which specifies a maximum i/o buffer size of 2K (the real + file to load or save the mask will use a different descriptor). + + The intent here is to provide an adaptive mechanism for setting the + FIO buffer size used to access an image, which automatically adapts + to the size of the image being accessed. If you access a lot of + small images you will get smaller buffers - everything will be as + before. If you access very large images, you may get large buffers + up to the builtin maximum value of (currently) 32 MB. + + Using large buffers could cause a machine to run out of memory. + However, it is likely that if someone is working on 300 MB images + that they are using a machine which has a memory at least that + large - probably larger. If there are problems, the environment + variable overrides can be used to tune IMIO. + + The reason for large file buffers is to limit the number of disk + data transfers, and hence the number of disk seeks. Using buffers + larger than a certain amount (32 MB is generous) is probably + counterproductive. If the i/o system provides 20 MB/sec i/o + transfers, 32 MB will take 1.6 seconds. This should be more than a + large enough granularity to provide efficient i/o, hence is a + reasonable limit (at this point paging effects are likely to + dominate). (12/04) + +unix/boot/spp/xc.c +unix/boot/spp/xc.c [pcix] + The findexe() routine can modify the PATH variable in the program + environment to add IRAF HSI directories to the path (so that + stuff like f2c.e can be found). The buffer used to compute a new + PATH environment variable was dimensioned SZ_PATHNAME, which is + too small for PATH since it may contain many directory pathnames. + Changed the buffer dimension used here to 8192. (12/04) + +sys/plio/plgsize.x +sys/plio/plstati.x +sys/plio/plloadim.x + Changed the code which computes the mask depth from PL_MAXVAL so + that it will return a value of zero for a newly created but + unitialized mask (naxes, axlen, and depth will hence all be zero + for a newly created mask). (12/04) + +sys/vops/awvg.gx + Changed the way the computation was done so that the value MEAN is + not forced to float when working on float data. It is replaced by + the expression (sum/ngpix) so that the computation of SIGMA is all + done in double precision internally. (12/04) + +sys/imio/imopsf.x +sys/imio/iki/fxf/fxfopen.x + Both of these routines had code such as "IM_PFD(im) = open (...)". + If the OPEN call should take an error exit, IM_PFD could get set + to a garbage value. The code was changed to break the assignment + into two statements so that IM_PFD is not set if the file open + fails. (12/04) + +sys/vops/alork.gx + +sys/vops/alor.gx + +sys/vops/alank.gx + +sys/vops/alan.gx + +sys/vops/vops.syn +sys/vops/vops.men +sys/vops/vops.calls +sys/vops/mkpkg +sys/vops/lz/mkpkg + Added new vector operators alan, alank (logical AND) and alor, alork + (logical OR). These take any integer data as input (short, int, + long) and return a logical (expressed as int) result. (12/05) + +sys/fmtio/evvexpr.gy + The code for the logical AND and OR operations was modified to use + the new VOPS alan/alor routines. The old code was based on the + bitwise boolean operators: it would work if the input data had only + logical values (zero or one), but not if the input data was any + arithmetic integer value. The new routines will treat all input + integer data values as either zero (false) or non-zero (true). + Finally if a logical operation is performed the result image will + be type int rather than short as before. This is just to be + consistent in the treatment of TY_BOOL as int. The old code was + trying to save space by storing the 1-bit logical result in a + short image. (12/05) + +sys/vops/awvg.gx + The usage of INDEF to set mean/sigma was incorrect. The generic + code would use the INDEF appropriate for the target datatype, but + the datatypes of the internal variables mean/sigma were being + explicitly set. Changed the INDEF usage to explicitly match the + INDEF type to the datatype of the mean/sigma variables. (12/05) + +sys/imio/iki/ikiextn.x + Removed the call to strlwr() made when processing filename extensions + in IMEXTN, e.g., imextn = "oif:imh fxf:fits,fit,FITS plf:pl" should + now do what one would expect. (12/05) + +pkg/proto/proto.cl +pkg/proto/proto.men +pkg/proto/proto.hd +pkg/proto/x_proto.x +pkg/proto/mskexpr.par +pkg/proto/mskregions.par +pkg/proto/doc/mskexpr.hlp +pkg/proto/doc/mskregions.hlp +pkg/proto/maskexpr/t_mskexpr.x +pkg/proto/maskexpr/memkmask.x +pkg/proto/maskexpr/t_mskregions.x +pkg/proto/maskexpr/mesetreg.x +pkg/proto/maskexpr/mesetexpr.x +pkg/proto/maskexpr/meregmask.x +pkg/proto/maskexpr/peregfuncs.x +pkg/proto/maskexpr/megeom.x +pkg/proto/maskexpr/meregfuncs.x +pkg/proto/maskexpr/mskexpand.x +pkg/proto/maskexpr/gettok.x +pkg/proto/maskexpr/gettok.h + Installed the mskexpr and mskregions tasks in the proto package. + (12/06/01, Davis) + +pkg/images/imcoords/src/t_wcsctran.x +pkg/images/imcoords/src/rgstr.gx +pkg/images/imcoords/src/rgstr.x + Fixed a string_file error in the wcsctran task which may occur + if the input image is dimensionally reduced. The bug is due to + an uninitialized array error. The bug does not occur if by + chance the array values are 0. (12/06/01, Davis) + +sys/imio/imsetbuf.x + Changed the way the buffer size is calculated slightly to avoid + overflowing a 32 bit integer when calculating the buffer size as + a fraction of a very large (e.g. 1 GB) image. (12/10) + +sys/imio/immapz.x + Tweaked the handling of "IMIO_BUFSIZE" so that the value can be + input in bytes, rather than the SPP char units used internally + for the buffer size calculations. MB would be more convenient + for the user but would prevent the use of "small" buffers (e.g. + the default buffer size is "small" - 0.5MB). (12/10) + +pkg/images/imutil/src/t_imstat.x + Added a call setting IM_BUFFRAC to 0 to the memory caching code in + the imstatistics task in order to force the imio buffer to be the + size of the input image. + (12/10/01, Davis) + +pkg/proto/masks/mstcache.x +pkg/proto/masks/rsscache.x + Added a call setting IM_BUFFRAC to 0 to the memory caching code in + the mimstatistics and rskysub tasks in order to force the imio buffer + to be the size of the input image. + (12/10/01, Davis) + +lib/imio.h +lib/imset.h +sys/imio/imsetbuf.x +sys/imio/imstati.x +sys/imio/imseti.x +sys/imio/immapz.x + Added another IMIO parameter BUFMAX for tuning buffer size + allocation. This allows the builtin value of the maximum FIO buffer + size (DEF_MAXFIOBUFSIZE, currently set to about 32 MB) to be easily + overridden at the application or environment level, like BUFSIZE and + BUFFRAC. + + If you set BUFFRAC=0 then BUFSIZE alone determines the FIO buffer + size (subject to storage device limits if any). BUFMAX is not a + "hard" limit, it is just a parameter used in the BUFFRAC heuristic + to automatically tune the buffer size. If BUFFRAC is allowed to + automatically tune the buffer size for the image to be accessed + (the default), then BUFMAX specifies the largest buffer which IMIO + will create. (12/10) + +sys/imio/iki/fxf/mkpkg +sys/imio/iki/fxf/fxf.h +sys/imio/iki/fxf/fxfaccess.x +sys/imio/iki/fxf/fxfctype.x +sys/imio/iki/fxf/fxfdelete.x +sys/imio/iki/fxf/fxfencode.x +sys/imio/iki/fxf/fxfksection.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfplread.x + +sys/imio/iki/fxf/fxfplwrite.x + +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/zfiofxf.x + The FITS kernel was modified to add support for storing images in + extensions as compressed pixel masks. The mask is stored as a + binary table using the "ZIMAGE" (compressed image) convention + proposed by White, Greenfield, Pence, and Tody in 1999: + + http://heasarc.gsfc.nasa.gov + /docs/software/fitsio/compression/compress_image.html + + In the current implementation only the "PLIO_1" compression + algorithm is implemented. Mask extensions may be read or written + directly by the kernel. When writing a new extension it will be + appended to the MEF file. To append an image to a MEF file as + a mask, include "type=mask" in the image kernel section when the + output image is opened. + + Masks are interfaced to the system as images and may be read and + written like any other image via IMIO. They have a normal image + header and can be manipulated with any program that deals with + images. The pixel type is INT. + + It is also possible to access a mask image as a PLIO mask. An + IMSTATI query for IM_PLDES parameter will return the PLIO mask + descriptor. While a mask extension is opened under IMIO it is + represented as a PLIO mask and may be accessed in this form like + any other mask. + + The mask image is stored in the FITS binary table (BINTABLE) + extension when the image is closed, and is loaded from the extension + when the image is opened. The compression representation used to + store the mask in the binary table is the same as is used within + PLIO. The new (V2.12) encoding is used, allowing very large masks + to be stored. Currently masks up to 3D are supported. Data on + each 2D mask plane will be compressed in both X and Y as with PLIO. + The depth of the mask is preserved. + + Although a mask is stored as a binary table the format of the + table is not completely general. In the current implementation + there can be only one column in the table (COMPRESSED_DATA). + This is an integer-valued variable length array column containing, + for each line of the N-dimensional image, the PLIO compressed + version of that image line. The actual compressed data is stored + in the heap area of the table. Multiple image lines may point to + the same compressed line list, e.g., to store the empty line or to + provide compression in Y. + (12/10 NZ+DT) + +sys/imio/iki/fxf/fxfrdhdr.x + Changes to fix and inconsistancy between the creation and modification + time of an image. The DATE keyword contains the creation date and time + and IRAF-TLM the modification date and time. (12/10 NZ+DT) + +sys/imio/iki/fxf/fxfexpandh.x + +sys/imio/iki/fxf/fxfupdhdr.x + The update header code was changed so that if a header has to be + expanded (hence forcing a rewrite of the full file) then all the + other extension headers will be expanded at the same time to + include at least "nlines" of blank cards. (12/10 NZ+DT) + +pkg/xtools/catquery/mkpkg +pkg/xtools/gtools/mkpkg + Added a missing "cq.h" file dependency to the cqsetcat.x declaration. + Added a missing <gio.h> file dependency to the gtlabax.x declaration. + (12/13/01 LED) + +pkg/proto/masks/mptools.x + Removed an unnecesary include <error.h> statement from the mptools.x + file. (12/13/01 LED) + +pkg/utilities/mkpkg + Removed an unnecessary mkpkg <ttyset.h> file dependency from the + curfit.x declaration. + (12/13/01 LED) + +pkg/images/immatch/src/imcombine/mkpkg + Added a missing <imhdr.h> file dependency to the timcombine.x + declaration. (12/13/01 LED) + +sys/imio/imwrite.x + In some cases (FIO block size less than the length of an image + line), when appending to an existing image, it could be possible for + data at the end of the file to be overwritten. The code which + extends an imagefile was made more rigorous. (12/13) + +unix/gdev/mkpkg +unix/gdev/iism75/mkpkg +sys/fmio/mkpkg +sys/fmtio/mkpkg +sys/memdbg/mkpkg +pkg/softools/mkpkg + Added missing mkpkg dependencies to sources. (12/13) + +sys/gio/stdgraph/stgrcur.x + The int function stg_encode was being called as a subroutine. (12/13) + +sys/gio/cursor/grcinit.x + Deleted the unused argument 'stream'. All calls to grc_init + (there was only one, in rcursor.x) already omit the argument. + This is an internal function, hence this is not an interface + change. (12/13) + +sys/gio/gmprintf.x + Added a missing argument to a sprintf call in this (currently unused) + routine. (12/13) + +sys/mtio/mtclean.x + Removed an extra argument from a getline() call. (12/13) + +sys/mwcs/mwsctran.x + Fixed a problem in mw_sctran that would occur where there is a + mixture of axes with and without world functions. When transforming + between logical and world this would have the effect of transposing + one of the function axes with one of the non-function axes. (12/13) + +sys/proto/maskexpr/peregfuncs.x + Removed an extraneous argument that was no longer necessary and was + being used incorrectly in the pe_polygon function. (12/14/01 LED) + +unix/os/zwmsec.c +unix/os/zwmsec.c [pcix] + This code uses usleep() to implement the millisecond sleep, which + limits the maximum time delay to just over an hour. Changed the + code to use sleep() for delays longer than one hour (with a + precision of at most 1 second), and usleep() for shorter time + delays. (12/15) + +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfplread.x +sys/imio/iki/fxf/fxfupdhdr.x + Added support for creating a pixel mask extension in NEW_IMAGE mode. + (12/15 NZ+DT) + +unix/hlib/install +unix/hlib/install.old +unix/hlib/uninstall +unix/hlib/sysinfo +unix/hlib/install [pcix] +unix/hlib/install.old [pcix] +unix/hlib/uninstall [pcix] +unix/hlib/sysinfo [pcix] + Installed the new version of the install script, and the companion + uninstall and sysinfo scripts. The old install script is still + present as install.old. The new version of INSTALL is a major new + version which does a much more through job of checking the integrity + of the system during an install; it also has some post-install + capabilities for performing basic system configuration. The + SYSINFO script can be used after an install to verify the integrity + of a system. (12/14) + +lib/pmset.h +sys/pmio/miostati.x +sys/pmio/mioseti.x + Added a new parameter P_PMCLOSE to mio_seti and mio_stati. This + provides access to the already existing flag used to automatically + close an associated PMIO mask if the MIO object is closed. (12/16) + +sys/pmio/mkpkg +sys/pmio/pmstati.x + Added the routine pm_stati to PMIO. This was in the interface as + a redefinition of pl_stati, but this was confusing enough to warrant + a separate routine. (12/16) + +lib/syserr.h +lib/syserrmsg +sys/pmio/pmseti.x +sys/plio/plseti.x +sys/plio/plstati.x + Added a default: branch to all the PLIO and PMIO set/stat calls to + call syserr(SYS_PLINVPAR) (invalid mask parameter) if a bad parameter + code is referenced. (12/16) + +unix/os/zmain.c +unix/os/zmain.c [pcix] + Modified zmain (the host main for an IRAF task) to call exit() instead + of _exit(). This is necessary to flush the output streams and to + call any exit functions posted with atexit(). Most notably this is + required for profiling (-pg/gprof) to work for an IRAF process. + The ability of an IRAF task to return a exit status is unaffected. + (12/16) + +sys/imio/db/impstr.x + This code is used to edit an existing header keyword to replace the + value string (either a quoted string or a numeric/logical string + value) with a new value. It would replace only the text in the + usual value fields through column 30. In rare cases where an old + numeric value extended beyond column 30 this could result in a + malformed value being generated. The code was modified to clear the + old text in this case, up to an optional comment or end of line. + (12/18 LD+DT) + +sys/imfort/imrdhdr.x + Fixed several instances of the function bfseek() being called as + a procedure. (12/19) + +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxfrfits.x +sys/imio/iki/fxf/fxfplwrite.x +sys/imio/iki/fxf/fxfplread.x +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxf.h + Fixed several FITS kernel bugs found during alpha testing. (12/21) + +unix/hlib/install +unix/hlib/uninstall +unix/hlib/sysinfo +unix/hlib/install [pcix] +unix/hlib/uninstall [pcix] +unix/hlib/sysinfo [pcix] + Installed the latest versions of these scripts. (12/21) + +sys/imio/iki/fxf/fxf.h +sys/imio/iki/fxf/fxfopix.x +sys/imio/iki/fxf/fxfopen.x +sys/imio/iki/fxf/fxfplwrite.x +sys/imio/iki/fxf/fxfupdhdr.x + Fixes for further minor FK bugs found during testing. (12/26) + +sys/ki/kfiosf.x + Changed the kopnsf routine to use a "server" variable like the + other KI file device drivers. This does not change the function + of the routine. (12/28) + +unix/hlib/cl.csh +unix/hlib/cl.csh [pcix] + Modified the CL startup script to check that, if $iraf is defined, + it is valid (or at least, whatever directory or link it points to + exists). If $iraf is defined but is invalid a warning is printed + and $iraf will be set to the default value of /iraf/iraf/ for the + current session. (12/28) + +unix/os/zfiond.c +unix/os/zfiond.c [pcix] +sys/fio/ndopen.x + The ND driver was modified to provide better support for writing + network servers. A new open modifier "nonblock" was added. If this + is used when opening a server connection to a port then the + connection will open a server socket on the indicated port and + return immediately, without waiting for a client connection. Later, + when a client tries to connect to the server, the server can open + the port with a special pseudo-filename syntax to accept the client + connection and set it up on a new socket. This allows a server to + listen for client connections and open each on a separate socket. + Multiple client connections may simultaneously be open (we still + need to add a "select" type function to allow IRAF network servers + to be written which can service multiple simultaneous clients). + + For example, to open a server socket on port 5697 on the localhost + to be used for client connections: + + server = ndopen ("inet:5697::nonblock", NEW_FILE) + + A client would subsequently connect to server port 5697 to get a i/o + connection to the server. To accept the client connection on port + 5697 and open an i/o stream to the client on a new file descriptor: + + fd = ndopen ("sock:<server>", NEW_FILE) + + where <server> is the ascii representation of the server file + descriptor returned in the first ndopen. Note this second ndopen + _will_ block if a client connection is not pending; usually some + external means will be used to avoid opening the client connection + until a client has made a connection attempt. Once the NDOPEN + returns, a second file descriptor can be opened with REOPEN to get + separate buffered streams for reading and writing to the client. + Note that if we repeat the second NDOPEN for additional client + connections, each call will return a new file descriptor (the + private connection to the new client), although the "file name" + "sock:<server>" will be the same in each call. (01/01/2002) + +unix/os/zfiobf.c +unix/os/zfiobf.c [pcix] +unix/hlib/libc/kernel.h +unix/hlib/libc/kernel.h [pcix] + The binary file driver was modified to add VMcache client support. + This adds two new capabilities to the driver: 1) built-in support + for direct i/o (on systems that support it), and 2) a client + interface to the VMcache daemon to permit the daemon to optimally + manage binary file i/o if a VMcache daemon is present. + + Direct i/o is file i/o which transfers data directly between the + disk and process memory, bypassing system virtual memory. For small + files or usage patterns which do not involve heavy i/o, direct i/o + will usually provide lower performance than allowing the system to + buffer data in virtual memory. For large files or usage pattern + which involve very heavy i/o, however, use of direct i/o can prevent + paging and will avoid cluttering up system virtual memory with data + that will be only accessed once. A limitation of direct i/o is + it is only possible when i/o transfers are block aligned and are + an integral number of device blocks in size - this means that + direct i/o cannot be used with the current version of the FITS + kernel, which currently uses a host device block size of 2880. + Direct i/o is currently only available on Solaris systems (versions + 2.6/5.6 or greater - 5.5.1 is not supported). + + Use of the VMcache daemon allows the daemon to control how file data + is cached in virtual memory. This makes it possible to optimize + file access to avoid excessive paging (by freeing space used by low + priority files when new VM cache space is needed), and makes it + possible to cache images in memory for very fast access even by + separate processes (even including non-IRAF programs in many + cases). The VMcache daemon can manage direct i/o on the behalf of + clients, telling the client whether to use normal (VM buffered) i/o + or direct i/o. VMcache can also pre-fetch files so that they are + memory resident by the time the application references them. + + The VMcache daemon is a separate system-level program outside of + IRAF. This is necessary to provide a central system-wide cache + controller. It also provides flexibility, allowing multiple + versions of the daemon to exist, e.g., to allow experimentation with + different types of caching algorithms. It also allows easy + customization of the daemon independently of the IRAF applications + using the VMcache client interface. + + The VMcache client interface was added to the BF driver (rather + than SF) because VMcache is a general low-level file i/o facility, + useful for all file i/o. FMIO files for example (used for QPOE + images) are large binary files but FMIO uses BF and not SF. + + For the moment the VMcache client interface has been added to + zfiobf.c since this is the only system component which uses it. + We may move it out to a separate file later. Two environment + variables have been provided for customizing the behavior of the + client interface: + + VMPORT The tcp/ip socket to be used. The built-in default + is 8677. Both IRAF and vmcached will respond to + this environment variable if defined. + + VMCLIENT Initialization of the VMCLIENT interface. The + string value should be a comma-delimited list of + keywords or keyword=value terms. For example, + VMCLIENT="disable" or VMCLIENT="debug,threshold=8m". + + The keywords currently recognized by VMCLIENT are the following: + + enable Enable use of the VMcache daemon, if any. Used + without the "=value". + + disable Disable use of the VMcache daemon. Used without + the "=value". + + debug Set the debug level. Can be used as either "debug" + or "debug=value". Higher values generate more + detailed debugging messages. + + threshold The file size threshold for use of the VMcache + daemon. Even if use of VMcache is enabled, the + daemon will be used only if the size of the file + being accessed equals or exceed the specified file + size threshold. Smaller files are handled using + normal i/o and do not result in any communication + with the daemon. Values may be specified in bytes + or in kilobytes (k or K suffix) or megabytes (m or M + suffix). + + directio Use of this keyword enables directio and disables + VMcache. The value specifies the file size + threshold for use of direct i/o to access a file. + Files smaller than this value use normal (VM + buffered) i/o. If directio is specified for a + client then use of VMcache is disabled, and no + communication with the daemon will occur. Values + may be specified in bytes or in kilobytes (k or K + suffix) or megabytes (m or M suffix). + + The builtin defaults are VMCLIENT="enable,threshold=8m". + + Normally there will be no VMcache daemon running on a system. If + the VMcache client is enabled a connection attempt will be made each + time a file larger than the threshold is accessed. This is harmless + if no daemon is present, and does not measurably affect execution + time. If a daemon is started after a process is already running, + the process will detect the daemon automatically in the next + connection attempt. If a process is connected to a daemon and the + daemon dies or is killed, the process will silently detect this and + close the connection to the server. If the daemon is subsequently + restarted the client will reconnect. (01/01) + +unix/boot/vmcached/README + +unix/boot/vmcached/notes + +unix/boot/vmcached/vmcache.c + +unix/boot/vmcached/vmcache.h + +unix/boot/vmcached/vmcached.c + +unix/boot/vmcached/README [pcix] + +unix/boot/vmcached/notes [pcix] + +unix/boot/vmcached/vmcache.c [pcix] + +unix/boot/vmcached/vmcache.h [pcix] + +unix/boot/vmcached/vmcached.c [pcix] + + The source for the developmental version of the VMcache library and + the VMcache daemon (vmcached) have been installed in BOOT. There + are no build files as this version is still under development. + The code is complete but only enough debug/test was done to support + development of the VMcache client interface for IRAF (the vmcached + code is debugged but the new version of the vmcache library code has + not been tested). Since the daemon can be worked with outside + the normal IRAF release we do not have to fully develop it for the + release. + + It should be stressed that VMcache is only useful or warranted for + systems that are very data intensive. The standard host operating + system file access heuristics are best for "normal" processing where + either the system is not really busy, or the datafiles are not + excessively large. On systems with very large physical memories + where massive amounts of data are being processed, VMcache can make + a significant difference in overall system performance. + + VMcache is too complex to document here. Without going into the + details, its function is to manage a cache of files in system + virtual memory. Files can be explicitly cached or uncached, or they + can be "accessed", and VMcache will decide whether or not to cache + the file in virtual memory. This is what the VMcache client + interface does: every time it accesses (opens or extends) a file + larger then the VM threshold it sends an "access" directive to the + VMcache daemon. The daemon sends back a response of 0 (file not + cached; use direct i/o to access the file), or 1 (file cached in VM; + use normal VM-buffered i/o to access the file). Even if a file is + not cached the daemon keeps track of all accesses. Files which are + frequently accessed will have a higher prority and are more likely + to be cached in memory. + + IRAF uses only the access directive to interact with VMcache since + a general IRAF task cannot know how it is being used. Higher level + clients may more explicitly control the cache: for example, the + Mosaic DHS will explicitly cache new images as they are read out, + and will cause other file accesses to be given a lower priority. + Any client code can connect to the VMcache daemon. For example we + could add a unix-level task to be called from scripts for explicit + cache control, or a GUI to dynamically display the operation of + the cache and the utilization of system memory. + + The builtin-default cache algorithm implemented in the new version + of VMcache uses the following heuristics to determine whether a file + is cached: + + Factors determining if a file is cached: + + user-assigned priority (0=nocache; 1-N=cache priority) + number of references + time since last access (degrades nref) + amount of available memory (cutoff point) + + Cache priority + + priority = userpri * max(0, + (nref-refbase - ((time - last_access) / tock)) ) + + Tunable parameters + + userpri User defined file priority. Files with a higher + priority stay in the cache longer. A zero + priority prevents a file from being cached. + + refbase The number of file references has to exceed + refbase before the file will be cached. For + example, if refbase=0 the file will be cacheable + on the first reference. If refbase=1 a file + will only become cacheable if accessed two or + more times. Refbase can be used to exclude + files from the cache that are only referenced + once and hence are not worth caching. + + tock While the number of accesses increases the cache + priority of a file, the time interval since the + last access likewise decreases the cache + priority of the file. A time interval of "tock" + seconds will cancel out one file reference. In + effect, tock=N means that a file reference + increases the cache priority of a file for N + seconds. A frequently referenced file will be + relatively unaffected by tock, but tock will + cause infrequently referenced files to age out + of the cache within a few tocks. + + For example, the cache could be configured to not cache a file the + first time it is accessed, causing direct i/o to be used for a file + which is only accessed once. The second time a file is accessed + it would be cached in memory. Files which are frequently accessed + would accumulate a high nref value and would stay in memory longer + than files which are only accessed once or twice. Files which are + explicitly given a high priority (userpri) would stick around even + longer (or could be prevented from ever being cached). Files which + have not been accessed for a long time will age out of the cache + unless they are given a very high priority. + + VMcache is not IRAF-specific. It is a stand-alone facility which + is well integrated with IRAF. IRAF is one possible client. (01/01) + +unix/os/mkpkg +unix/os/mkpkg.sh +unix/os/dio.c + +unix/boot/spp/xc.c +unix/hlib/irafuser.csh +unix/shlib/mkshlib.ssol-sc34 + Use of direct i/o for Solaris proved more difficult than expected + as the system routine required to control this feature (called + "directio") is only available in Solaris 5.6 and later. A 5.5.1 + system will fail to link if directio is used. To get around this + I had to add a compatibility library libcompat.a in HBIN. This + is linked after libc.a and can be used to provide versions of + any system routines not present in libc.a. If libc.a does contain + the routine then this is the version used. (01/01) + +unix/hlib/cl.csh + The logical expression to check for the definition of a $iraf and + it's validity was broken up into separate statements. On some + systems the full expression was being evaluated even if the first + test failed, leading to an 'undefined variable' message when checking + the path validity if it wasn't already defined. (01/02, MJF) + +sys/imoi/iki/fxf/fxfdelete.x + Adding a missing access mode argument to the call to fxf_access. + (01/02) + +lib/syserr.h +lib/syserrmsg +sys/imoi/iki/fxf/fxfplread.x + The miiread routines, which are integer functions, were being called + as procedures. Modified the code to use the return value to check + for a read error. Added call to syserrs and added a new FXF error + message to syserr for a read error on a mask extension. (01/02) + +sys/imio/impmmap.x +sys/imio/impmopen.x + These routines, used to map a pixel mask onto an image descriptor, + were modified to support mapping a mask stored as an image (e.g., + a mask extension in a FITS MEF file). im_pmmap was also modified + to fix a bug that would occur when the BOOLEAN_MASK and INVERT_MASK + flags were both set. (01/03) + +sys/plio/plsaveim.x +sys/plio/plloadim.x + These routines were modified to use PLIO to copy the image section + when saving a mask to an image or loading a mask from an image, and + the image is using a mask internally (e.g., a mask extension in a + FITS MEF file). (01/03) + +pkg/xtools/catquery/cqquery.x + Fixed a couple of typos in the code which detects the end of the + http header. (01/03 LED) + +unix/os/zfdele.c +unix/os/zfiobf.c +unix/boot/vmcached/vmcached.c +unix/os/zfdele.c [pcix] +unix/os/zfiobf.c [pcix] +unix/boot/vmcached/vmcached.c [pcix] + Added code to the VMcache client interface for a vm_delete method. + Modified zfdele (the delete file primitive) to call this function. + The purpose is to notify the VMcache daemon when a file is deleted + so that it can free the associated VM memory used and cache info, + if the file is cached. The usual VM client heuristics apply here, + e.g., nothing is done unless VMcache is enabled and the file size + exceeds the threshold. Also tested the VMcache code on Solaris + (it was tested on FreeBSD earlier) and made some more tweaks. (01/03) + +pkg/images/imutil/src/t_minmax.x + Removed extra aguments from the calls to clpstr. (01/07 LED) + +pkg/xtools/rngranges.x + Added missing rstr argument to 2 rng_error calls. (01/07/ LED) + +sys/ki/irafks.x + Fixed a couple of typos in the server-side code for ZOPDPR. (01/07) + +sys/tty/zzdebug.x +sys/plio/zzdebug.x +sys/pmio/zzinterp.x +sys/qpoe/zzdebug.x +math/interp/bench.x + Minor fixes to make spplint happy. (01/07) + +lib/syserrmsg +sys/imio/iki/fxf/fxfksection.x + Changed the system error SYS_FXFKSINVAL to read: + FXF: invalid value for kernel section parameter (<param>) + Also fixed a bug in the TYPE case of the kernel section parsing + code; it was identifying the parameter name in the error message + as "mask" when it should have been "type" (as in type=mask). (01/07) + +sys/imio/iki/fxf/fxfrfits.x + The computed calendar day was of off by one day. (01/07 NZ+DT) + +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxfplwrite.x +sys/imio/iki/fxf/fxfopen.x + Fixes installed for problems involving copying an image section. + Also fixed another case of mask code that was limited to 2 dimensions. + (01/07 NZ+DT) + +unix/shlib/S.ver.sparc + Incremented the shared image version number to 8 (S8.e). (01/07) + +unix/shlib/S.ver.ssun + Incremented the shared image version number to 12 (S12_5.5.e, + S12_5.6.e, etc.). Installed the released (V2.11.3) versions of + the older shared images (S7.e in sparc, S11_5[567].e). (01/07) + +sys/imio/iki/fxf/fxfplwrite.x +sys/imio/iki/fxf/fxfopen.x + Fixed a bug affecting copying a section of a mask to a section of + a mask in a FITS extension. (01/08) + +unix/boot/mkpkg/tok.c +unix/boot/mkpkg/tok.c [pcix] + The MKPKG special file list facility was extended to add support + for custom platform-dependent linking of executables. In the + $special directive if the target is a ".e" file the "make object" + command string will be used to link the executable, instead of + whatever command is given in the mkpkg file in the source directory. + Special link directives are only recognized for files linked with + the $link directive in a mkpkg file. (01/09) + +unix/hlib/libc/kernel.h + Increased SZ_DEFWORKSET from 8m to 64m. SZ_MAXWORKSET will be + determined automatically on many recent systems so I did not change + the current default value, which is 256m. (01/10) + +unix/os/zawset.c + This routine (used by BEGMEM to try to get the maximum amount of + physical memory available on a particular computer) was modified to + automatically detect the physical size of system memory. The + technique used should work on most recent POSIX systems, including + Solaris and Linux. The maximum amout of memory that ZAWSET will + return is limited to 2GB even on machines with a larger physical + memory. (01/10) + +sys/imio/iki/fxf/fxfupdhdr.x +sys/imio/iki/fxf/fxfplwrite.x +sys/imio/iki/fxf/fxfopen.x + Installed a bug fix for the case of copying a section of an existing + mask to a mask extension where the dimensionality of the mask is + reduced. (01/11) + +unix/os/zawset.c +unix/os/zawset.c [pcix] + Made some more enhancements to this routine and tested it. To aid + testing, the routine now recognizes the environment variable + ZAWSET_DEBUG: if this variable is defined, debug messages will be + printed when zawset is called to indicate the total system memory + argument values, and other memory-related parameters. If the total + system physical memory can be determined the routine will + automatically reserve some fraction of the space for the system + to minimize swapping. (01/11) + +unix/hlib/mkpkg.sf.SSUN + Added a special file entry to link x_images.e nonshared (-z) for + Solaris. We probably don't need to do this for the SunOS version, + as any computers still running SunOS are older systems unlikely to + require more than 268 MB per process, and the shared version will + be smaller, use less memory and start up a little faster. (01/12) + +unix/boot/mkpkg/tok.c +unix/boot/mkpkg/tok.c [pcix] +unix/hlib/mkpkg.sf.SSUN + The special file list link support was further enhanced to allow + replacing LFLAGS (the link flags variable) as well as the entire + link line. Replacing LFLAGS is much easier than replacing the + entire link line in cases where all we want to do is change a + link flag (like adding -z to link nonshared), and it avoids + needless duplication of package information in the special file + entry. The SSUN mkpkg special file list of updated to use this + new syntax. (01/15) + +unix/os/zawset.c [pcix] + Installed the new version of ZAWSET on PC/IRAF. (01/15) + +sys/imio/imsetbuf.x +sys/imio/iki/fxf/zfiofxf.x + 1. Modified the FITS image kernel to respect (pass-through) the + device block size of the low level file driver. This is usually + a device sector (512 bytes), the physical storage unit of the + low level storage device. Formerly the FK was setting a pseudo + block size of 2880 bytes, however blocking and deblocking should + be done at the FIO level; if we try to do this in an IRAF file + driver then the host system is required to do blocking/deblocking. + Using transfers which are physically aligned at the hardware level + makes certain optimizations possible, such as direct i/o. + + 2. The imsetbuf routine in IMIO was modified to be a little smarter + in aligning the first file buffer for a pixel file. Formerly it + would only set the offset of the first file buffer if image lines + were aligned to device blocks. This is overly restrictive, and + doesn't work for FITS files. The code was changed to always set the + first file buffer offset for a pixel file, setting it to the offset + of the device block _containing_ the first image line. If the first + image line is not block aligned the FIO buf size is made larger by + the amount of the intra-block offset to ensure that it is big enough + to contain the computed number of image lines for which the buffer + was sized. (The point of all this is to minimize the number of file + reads or writes and the total i/o needed to span an image). (01/16) + +unix/os/zfiobf.c +unix/os/zfiobf.c [pcix.x] + Added another debug level 2 message to the directio directive, to + print debug messages whenever directio is turned on or off for a + file. Directio was tested for FITS files on Solaris and it appears + to be working now. (01/16) + +unix/hlib/cl.csh +unix/hlib/cl.csh [pcix] + Changed the "setenv d_iraf" to "set d_iraf =" since d_iraf is an + internal variable within the script and doesn't need to be exported + to the global environment. (01/19) + +unix/hlib/buglog.csh +unix/hlib/zzsetenv.def +unix/hlib/buglog.csh [pcix] +unix/hlib/zzsetenv.def [pcix] + Changed a couple of ID strings to read V2.12BETA. (01/19) + +unix/os/dio.c + [pcix] +unix/hlib/zzsetenv.def [pcix] +unix/hlib/libc/kernel.h [pcix] +unix/hlib/libc/iraf.h [pcix] +unix/hlib/cl.csh [pcix] +unix/gdev/mkpkg [pcix] +unix/gdev/iism75/mkpkg [pcix] +unix/boot/bootlib/envinit.c [pcix] + A diff/merge of the Sun/IRAF and PC-IRAF HSI was performed and the + following files were updated to merge in various changes from the + V2.12 Sun/IRAF revisions. (01/19) + +sys/mkpkg +lib/libmain.o - + The libmain entry in the system mkpkg was modified to check file + dates against bin$libmain.o instead of lib$libmain.o. It builds + directly into bin anyway so there is no need for the link entry + in lib. (01/19) + +../irafbin/bin.redhat-5.2 [pcix] +../irafbin/noao.bin.redhat-5.2 [pcix] +unix/bin.redhat-5.2 [pcix] + Deleted the RedHat 5.2 binaries. IRAF V2.12 no longer supports + RedHat 5.2. (01/19) + +cl/cl.par +images/images.cl +unix/hlib/login.cl +unix/hlib/login.cl [pcix] + Update cl.version (cl.par) and cl.logver (hlib/login.cl, images.cl) + to "IRAF V2.12 December 2001". hlib$login.cl was updated slightly + as well, adding entries for imextn and pspage, and some more unix- + oriented foreign tasks. Updating cl.version would normally force + the user to update login.cl. This is often not required for a new + release (as is the case this time) so I added a new cl.par parameter + cl.logregen which, if set to "yes" causes a message to be printed + whenever an IRAF session is started with an out of date login.cl. + With this change we can update cl.version and cl.logver in each + IRAF release and still control separately whether a new mkiraf + is required. (01/21) + +unix/os/zfiotx.c [pcix] + Modified the terminal driver code to use sigaction instead of signal + for signal handling on Linux systems. Use of signal was causing + a problem where ctrl/c would fail after using epar/ehist (raw terminal + i/o) on a Linux system. (01/21) + +dev/vdm.gki [pcix] + Replaced with an equivalent but byte-swapped version of the file + which is compatible with the PC architecture. (01/22) + +local/.xinitrc - [pcix] +local/.login [pcix] + Deleted the .xinitrc - there are two many optional desktop + configurations available for PC systems these days to make it + worthwhile trying to retain this. Updated the "win" and "win8" + aliases for compatiblity with recent versions of XFree86. (01/22) + +pkg/images/imutil/src/gettok.x + IMEXPR was incorrectly parsing numbers with exponents like "5.8503E-6". + (01/23) + +pkg/proto/maskexpr/gettok.x + MSKEXPR was incorrectly parsing numbers with exponents like "5.8503E-6" + (see above). At present it uses a private copy of images macro + expansion library. This library should probably be made a system or + xtools library at some point. (01/23 LED) + +---------------------------------------- +Cut V2.12 BETA release. (01/25/2002) + +unix/hlib/extern.pkg + Changed definition of NSO package to use /shared/iraf/extern. The + previous version pointed to a non-existant directory and broke the + package when the system was updated to the servers. (1/29/02, MJF) + +pkg/images/immatch/src/imcombine/src/xtimmap.gx +pkg/images/immatch/src/imcombine/src/icomb.gx +pkg/images/immatch/src/imcombine/src/icgdata.gx + The code to close unused images when they are not needed had an error + when there were y offsets. Rather than closing each image when it not + longer contributed to an output line due to an offset, it was instead + closing all images on every line and then mapping them again. + (1/29/02, Valdes) + +pkg/images/immatch/src/imcombine/src/icombine.x +pkg/images/immatch/src/imcombine/src/icomb.gx +pkg/images/immatch/src/imcombine/src/xtimmap.gx +pkg/images/immatch/src/imcombine/src/icombine.h + The buffer size management calculation based on the number of input + images was no longer working because unless IM_BUFFRAC is explicitly + set to 0, the requested buffer size is just a lower limit. The buffer + size calculation was modified and calls to set IM_BUFFRAC to zero were + added. (1/30/02, Valdes) + +unix/hlib/extern.pkg + Added definitions for the GRASP and GRASPO packages needed by + GONG. Also added NSO to helpd string. (1/31/02, MJF) + +pkg/images/immactch/doc/ccmap.hlp + Fixed a type in the ccmap help page package definition. + (02/01/02 LED) + +dev/hosts + Added solaris machine gongxx (2/1/02, MJF) + +unix/boot/spp/xc.c + Modified for Solaris systems to link the socket libraries dynamic + (at the Solaris level) when linking the IRAF executable nonshared + (at the IRAF level). This is necessary as the socket libraries + are incompatible in different versions of Solaris. (02/02) + +sys/imio/iki/fxf/fxfrfits.x + Modified to correctly handle the case where an embedded BINTABLE + extension is something other than a PLIO_1 pixel mask. (02/02) + +sys/imio/iki/fxf/mkpkg +sys/imio/iki/fxf/fxfplwrite.x + Removed the unused <plio.h> reference from fxfplwrite.x, and added + <imhdr.h> and <pmset.h> to the mkpkg file entry as dependencies. + (02/02) + +sys/plio/mkpkg + Added <imset.h> as include dependencies to the mkpkg file entries + for plloadim.x and plsaveim.x. (02/02) + +unix/hlib/cl.csh [pcix] + Fixed a couple of obscure variable referencing errors. (02/02) + +---------------------------------------- +Updated V2.12 BETA release; public BETA release. (02/02/2002) + + +pkg/images/tv/display/sigm2.x + The routine to compute the maximum value as the interpolated quantity + was incorrect because the size of the input and output arrays were + treated as the same when they are not. This is used for overlay + display which produced the symptom of horizontal lines. + (2/5/02, Valdes) + +pkg/images/tv/display/dspmmap.x + Added the feature that the bad pixel mask or overlay mask may be + specified by a keyword value with the syntax !<keyword>. This is + important for multiextension files where various masks are set + as keywords. The new task OBJMASKS also writes the object mask name + that is created for an image in the header. Use of !objmask then + allows the object mask to be used for the bad pixel mask (to set + the scaling using only sky pixels) and for overlay. + (2/5/02, Valdes) + +pkg/images/immatch/src/imcombine/src/icmask.x + If pl_loadf fails then pl_loadim is tried. This adds support for + masks in FITS extensions. (2/5/02, Valdes) + +pkg/images/immatch/src/imcombine/src/icmask.x +pkg/images/immatch/src/imcombine/src/icmask.h +pkg/images/immatch/src/imcombine/src/iclog.h +pkg/images/immatch/src/imcombine/imcombine.par +pkg/images/immatch/imcombine.par +pkg/images/immatch/doc/imcombine.hlp + The masktype parameter may now specify !<keyword> to select the keyword + to use for a mask. When this option is selected the mask value + interpretation is "goodval". (2/5/02, Valdes) + +pkg/images/immatch/src/imcombine/src/icaverage.gx +pkg/images/immatch/src/imcombine/src/icsigma.gx +pkg/images/immatch/src/imcombine/src/icomb.gx +pkg/images/immatch/src/imcombine/src/icscale.x +pkg/images/immatch/src/imcombine/src/icemask.x +pkg/images/immatch/doc/imcombine.hlp + If weights of zero are given for an image then that image will not + contribute to the output weighted average unless all of the + non-excluded images have zero weight. In that case the unweighted + average is output. The exposure mask is the sum of the exposure times + of the images with non-zero weights. These changes allow combining + only data which is considered good (photometric or good seeing) as + specified by the weights but still including non-good data in the + final image when there is no good data. The combinined zero weight + data will have an exposure time mask value of zero. (2/8/02, Valdes) + +sys/fio/close.x + This routine was supporting the F_CLOSEFD option incorrectly and + could attempt to close an already closed file in the special case + where F_CLOSEFD is enabled but later disabled, leaving the file + closed since it is not reopened until the next i/o occurs. (02/17) + +pkg/images/lib/imcopy.x + Added a missing sfree to the img_imcopy.x routine which fixed a segvio + error seen in the imcopy routine. (02/18, Davis) + +sys/imio/iki/fxf/fxfupdhdr.x + The FITS kernel would fail to expand the header in the case of a + single FITS file when there are more keywords in the IMUSERAREA than + space in the FITS header. (02/18) + +sys/imio/iki/fxf/fxfplwrite.x +sys/imio/iki/ikiaccess.x +sys/imfort/db/idbkwlu.x +sys/gio/nsppkern/zzdebug.x + Fixed some minor instances of mismatched or missing salloc/sfree + pairs. (02/19) + +pkg/images/lib/rgmerge.x +pkg/images/imutil/src/t_imstack.x +pkg/images/imutil/src/t_imsum.x + Fixed some minor instances of mismatched or missing salloc/sfree + pairs. (02/19 LED) + +pkg/images/tv/imexamine/iegimage.x + The changes to support multiple WCS per frame involved keeping track of + the full WCS frame id (i.e. 101) rather than just the frame number. + There was a minor error in this bookkeeping when incrementing the + the next display frame to be used. (2/19/02, Valdes) + +pkg/images/imutil/src/t_minmax.x + Fixed a floating overflow error in minmax which occurs when the + update parameter is set to yes but the input image has a dimensionality + of 0. In this case the min and max values are set to INDEFD but + must be converted to INDEFR before being stored in the image header. + (2/19/02, Davis) + +sys/plio/plsave.x + pl_save uses pl_p2li to encode the line index for a PLIO mask. + For a very large mask the integer values (which are indices into + the line list storage buffer) can be quite large, and will be + incompressible by PLIO unless the image contains zero lines or + duplicated lines. In the worst case it takes a "set high value + absolute) instruction for each index value, and 3 line list words + (6 bytes) to represent 1 integer index value in the encoded line + list. The line list buffer used was not sized for this worst + case value and could overflow. (02/19) + +sys/mwcs/mwsave.x +sys/qpoe/qpiomkidx.x + These routines use pl_p2li in a similar way to pl_save, so I made a + buffer size change as for pl_save above. (02/19) + +pkg/images/immatch/src/imcombine/src/icstat.gx +pkg/images/immatch/src/imcombine/src/xtimmap.gx + asum$t declared incorrectly as type PIXEL rather than real. xt_cpix + incorrectly defined as pointer function instead of a subroutine. + (2/20/02, Valdes) + +pkg/images/immatch/src/imcombine/src/xtimmap.gx + The header keywords were not being fully copied. (2/20/02, Valdes) + +pkg/images/tv/imexamine/iegimage.x + The 'p' was not properly updated for the multiple WCS changes. + (2/26/02, Valdes) + +pkg/xtools/fixpix/xtpmmap.x + The change to IMIO for mapping bad pixel files in FITS extensions + resulted in a different error code when failing to open the file. + This code needed to be recognized by this routine in order to + continue on to try other possible formats. (2/27/02, Valdes) + +pkg/images/imcoords/src/t_wcsctran.x + Fixed a bug the logical to tv coordinate mapping which could occur + if the section subsmapling parameter was > 1, the input image was a + section of a higher dimensioned image, and the first dimension was + not one of those extracted. (3/1/02, Davis) + +pkg/images/tv/imexamine/iegimage.x +pkg/images/tv/imexamine/t_imexam.x + When the frame buffer is used as the image source (when the image name + in the display frame cannot be mapped) the final imunmap would + attempt to unmap the same descriptor twice. (3/1/02, Valdes) + +pkg/images/tv/imexamine/iegimage.x + When imexmaine fails to map the image name returned by the display + server it uses the frame buffer. Previously there was no warning + message about failing to map the image. Now there is a warning. + This is only given once until there is no error or the error message + changes either by going to a new frame buffer or doing a new display. + (3/4/02, Valdes) + +pkg/images/tv/display/t_display.x +pkg/images/tv/display/imdmapping.x + Added a check for the image name being "dev$pix" and if so added the + ".imh" extension to the full node!prefix pathname to avoid an ambiguous + image name error in clients like IMEXAM which need to readback the + image name with a WCS query. The expansion was left in place to allow + iraf networking access to the image. (3/4/02, MJF) + +sys/imio/iki/fxf/fxfplwrite.x + Masks containing empty lines were not being handled correctly. (3/05) + +sys/imio/iki/fxf/fxfrfits.x + A FITS MEF containing an embedded binary table not recognized by + the FK (i.e., anything other than an embedded PLIO mask) would cause + a failure to read the file. Moved the code which detects this + condition so that the FK will skip over FITS extensions it doesn't + recognize, so long as it is not asked to read them. (3/05) + +unix/hlib/mkpkg.sf.SSUN + In addition to x_images.e, x_plot.e and x_tv.e are now linked -z + to avoid the 268 MB per-process memory limitation imposed by the + solaris/iraf shared image. In the case of plot and tv, this was + needed to deal with excessively large PLIO masks used for NDWFS + images. (3/05) + +pkg/images/imutil/src/hedit.x +pkg/images/imutil/src/hselect.x + Added missing xev_freeop calls to the hedit and hselect tasks and a + missing mfree call to the hselect task. (3/5/02, Davis) + +sys/plio/plloadim.x +sys/plio/plsaveim.x +sys/plio/zzdebug.x +sys/pmio/zzinterp.x + [INTERFACE CHANGE] Modified these two routines to add the + arguments title,maxch so that they can save and restore image + headers encoded in the "title" string, as for a PLIO mask + saved in a .pl file. If a mask is being created from an + image with pl_loadim then the "title" string will be encoded + and returned. If an image is being writen from a mask and + encoded "title" string with pl_saveim then the image header + is populated from the encoded title string. This was + necessary to handle image headers uniformly in im_pmmap (see + the discussion under im_pmopen below). These are obscure + routines which are currently only used by the system code in + IMIO (so far as I can tell) hence the interface change should + be a minor risk. (3/05) + +sys/imio/impmmap.x + Deleted the unused stack variables ksection and title. (3/05) + +sys/imio/impmopen.x + Modified im_pmopen (called by im_pmmap) to add the title,maxch + args to the call to pl_loadim, used to load a mask from an image. + The call to pl_loadf, used to load a mask from a .pl mask file, + already sets title,maxch, which is used by im_pmmap to load the + image header of the image it creates from the stored mask. (3/05) + +pkg/images/immatch/src/imcombine/src/iclog.x +pkg/images/immatch/src/imcombine/src/icmask.x +pkg/images/immatch/src/imcombine/src/icstat.gx + Rather than open all the masks at the beginning the masks are now + opened and closed as needed. For situations with offsets this + can reduce the amount of memory required for the masks. + (3/6/02, Valdes) + +pkg/images/immatch/src/imcombine/src/icombine.x + Added error checks for imunmap of the output files. In the final + stage of closing the output if an error occurs, principally in + writing mask, this will at least allow the primary combined output + image to be written. This is useful when an extremely large combining + operation is performed. (3/6/02, Valdes) + +unix/hlib/install + Fixed an error in the pathname prompts when the defaults values are + not accepted. (3/6/02, MJF) + +unix/hlib/install + Modified to permit setuid, setgid, and sticky-bit permissions in + the iraf directory files when doing validity checks. (3/6/02, MJF) + +unix/hlib/install + More small fixes and added checks found when building PC-IRAF systems. + (3/7/02, MJF) + +lib/syserr.h +lib/syserrmsg +sys/plio/plcmpress.x + Modified the pl_compress code slightly to add a sanity check for the + mask being compressed. We had a case where this code went into an + infinite loop in a process that was nearing the 2GB memory limit, + probably as a result of a pointer going negative. (3/10) + +unix/as.linux/zsvjmp.s [pcix] +unix/as.linux/zsvjmp.s.SL40 [pcix] + + Newer versions of Slackware require use of __sigsetjmp, like most + modern Linux versions (RedHat etc.). (3/10) + +unix/boot/mkpkg/host.c [pcix] + The resolvefname code could fail in some cases where the pathname + was a simple file name. (3/10) + +unix/hlib/install [pcix] + Various minor changes to support the PC-IRAF platforms. (3/10) + +unix/os/zgtime.c [pcix] + Added an include for <time.h> to pick up the CLK_TCK definition + to get things to build correctly on some PC-IRAF platforms. (3/10) + +unix/bin.linux/f2c.e [pcix] +unix/bin.linux/f2c.e.SL40 [pcix] + + Replaced the LNUX f2c.e by the RHUX version, required by Slackware 8 + which uses glibc2. (3/10) + +unix/os/zopdir.c [pcix] + Added a new ifdef check for LINUX to the dirfd() usage as required + for newer Linux/IRAF (Slackware) systems. (3/11) + +---------------------------------------- +Updated V2.12 BETA release; second public BETA release. (3/12/2002) + + +dev/imtoolrc +dev/graphcap + Added new stdimage devices imt45-imt49 submitted by Gemini for + GMOS CCD displays at various sizes. (3/14/2002, MJF) + +sys/imio/iki/fxf/fxfupdhdr.x + When copying an extension or subsection of an extension to a new + file some of the header keywords could be duplicated at the end + of the header. (3/15) + +sys/imio/iki/plf/plfupdhdr.x + If an error occurred while writing the header to a pixel mask + image the error handler in this routine would mask the error and + no error was being reported to the caller. (3/15) + +doc/newsfile +doc/v212revs.hlp + + Installed the V2.12 Revisions Summary and updated the 'news' command + files. (3/15/02, MJF) + +dev/hosts + Aliased 'ndws' to 'archive' (3/18/02, MJF) + +dev/hosts + Added new NDWFS RedHat machine 'dropbear' (3/19/02, MJF) + +pkg/images/tv/display/t_display.x + If an image section of a higher dimensional image is displayed the + image section is included in the image name sent to the display + server. Previously the section was stripped and so it was not + possible to know the 2D section displayed. For now we keep backwards + compatibility by stripping any section from 2D parent images. + (3/20/02, Valdes) + +pkg/images/tv/imexamine/iegimage.x + Image sections in the image name retrieved from the display server + are now handled more intelligently. In particular, 2D sections of + higher dimensional images will now examine the correct 2D section + rather than just the lowest 2D plane. (3/20/02, Valdes) + +pkg/dataio/export/export.h + Changed the zscale sampling parameters to use more points spread out + over more of the image. The old values would sometimes find an + innappropriate z1/z2 range causing problems when doing many images in + batch mode. (3/20/02, MJF) + +unix/hlib/install +unix/hlib/install [pcix] + A previous change that added a check for write permission on the iraf + tree (to edit paths) proved to be too restrictive when installing on + an NFS client node. The check was modified to allow the install to + continue without editing files if the user wanted, this would create + the local command links and device files but not edit the paths in + the iraf files. A '-noedit' option to force this behavior was also + added. (3/20/02, MJF) + +sys/imio/iki/fxf/fxfrfits.x + The limtime value calculated was off by a day after Feb 2002 and as + a result DATAMIN and DATAMAX were not being updated in headers. + Replaced the code which calculates limtime by a more robust calculation + based on the Julian day taken from asttools. (3/21) + +sys/imio/iki/fxf/fxfupdhdr.x + The update header code was modified to delete BSCALE and BZERO for + floating point images, just in case they are added to the header + by the application after the image has already been opened. + We may as well do this since the FK does not support use of scaling + when reading floating point images, and the presence of these + keywords in the header could cause an i/o error when the image is + later opened for reading (as seen in ST HSTIO code during testing + of V2.12). (3/21 NZ+DT) + +pkg/images/tv/tvmark/mkoutname.x +pkg/images/tv/tvmark/mktools.x + Fixed a bug in the default output image name code that would result + in hidden images with names like .snap.1, .snap.2, etc being written + if the display image name included a kernel or pixel section. + (3/21 LED) + +dev/hosts + Added redhat machines cholla and pym, removed pyxis (3/24/02, MJF) + +dev/hosts + Added the MacOS X host cetus. (3/24) + +doc/newsfile +doc/v212revs.hlp + Fixed some typos and formatting problems with the revisions (3/25, MJF) + +pkg/system/help/t_help.x + Fixed a bug with dev=text where the standout flags weren't being + properly disabled. (3/25/02, MJF) + +unix/hlib/install +unix/hlib/install [pcix] + Small change to allow a "no-edit" install to skip the configuration + stage (all of which require edit permissions). (3/25, MJF) + +noao/mkpkg + Added an entry for MACOSX. (4/02) + +pkg/images/imcoords/src/t_wcsctran.x + Added an error check for INDEF valued input coordinates. (4/04, LED) + +pkg/images/immatch/src/imcombine/src/icmask.x + There was a bug in the recent change to open and close masks as needed + where a possibly null filename pointer was being checked for being + a null string. (4/8/02, Valdes) + +pkg/lists/doc/Lintran.hlp +pkg/images/tv/iis/doc/Cv.hlp + The above files were rename to Lintran.spc.hlp and Cv.spc.hlp + respectively in order to work around upper / lower case file name + ambiguities in MACOSX. (4/11, LED) + +pkg/images/imcoords/src/t_ccget.x + Ccget was not transforming the units and applying the user supplied + formatting parameters if the input or output coordinate system, e.g. + ICRS, was the same as the catalog coordinate system. This bug does + not affect released code. (04/16/02, Davis) + +unix/hlib/install +unix/hlib/sysinfo +unix/hlib/install [pcix] +unix/hlib/sysinfo [pcix] + Mods and bug fixes needed for OS X (04/16/02, MJF) + +pkg/images/immatch/src/imcombine/src/icsetout.x + When computing offsets the registration point was the reference pixel + returned by mw_gwterm for the first image. The code then went on to + assume this was a logical pixel when comparing with the other images, + which is not true when there is a physical coordinate system. The + algorithm was fixed by converting the reference point to logical + coordinates. (4/18/02, Valdes) + +pkg/cl/main.c + The routines startup() and shutdown() in the CL main conflicted + with host library routines of the same name on MacOSX. Changed + these two routines plus login() and logout() to static functions. + Added a new external function cl_shutdown to allow the error + recovery code to get at the now static shutdown(). (4/21) + +pkg/cl/errs.c +pkg/cl/errs.h +pkg/cl/binop.c + Modified the interpreter binary divide operator to check for a + zero divisor and call cl_error if a divide by zero is attempted. + Added two new error actions for integer and floating divide by + zero. (4/21) + +unix/hlib/config.h [pcix] +unix/hlib/libc/spp.h [pcix] + Increased LEN_JUMPBUF to 1024 for this platform to allow for the + worst case jmpbuf for MacOSX (not sure why this can be so big but + it may be the altivec vector registers). (4/21) + +unix/boot/bootlib/rindex.c [pcix] +unix/boot/bootlib/index.c [pcix] + These functions conflicted with the host system versions due to + the dynamic libraries used on MacOSX. Redefined the names for + this platform to avoid the conflict (this is new since the initial + 10.0 port). (4/21) + +unix/os/zzstrt.c [pcix] + Minor modifications for MacOSX. Normally process startup exception + handling initialization is done in this file. For MacOSX nothing + is done at the moment (since the exception handling is mostly + done in software) but the LinuxPPC code had to be reworked somewhat + for MacOSX to build on both platforms. (4/21) + +unix/bin.macosx/mach.h [pcix] + + Installed a byteswap=NO version of <mach.h> in HBIN for MacOSX. + This allows the same PC-IRAF HSI to be used for both Intel and + PowerPC, which are byte swapped with respect to each other. The + default <mach.h> in HLIB is for Intel. Note that any versions + of the global system includes in the HBIN for a platform will + override the global HLIB versions. (4/21) + +unix/os/zzepro.c [pcix] + +unix/hlib/libc/knames.h [pcix] +unix/os/mkpkg [pcix] + Added a new routine ZZEPRO (ZZ End PROcedure) to the PC-IRAF OS. + This is present on all PC-IRAF platforms, but is a no-op (for now) + except on MacOSX. On MacOSX it calls an assembler routine to + read the PowerPC floating point status and control register (FPSCR) + to check if any floating point "exceptions" have occurred. + Currently the floating point exceptions are not enabled for MacOSX, + but the hardware will nonetheless set a bit in the FPSCR if one + of the IEEE-defined exception conditions occur. The ZZEPRO code + will check for a divide by zero, overflow, or invalid operand + exception condition, and if any of these have occurred, execute + a "software exception" by calling the exception handler in ZXWHEN. + The result is exactly the same as a real hardware exception, with + all the same semantics and error actions, except that the + exception condition is not detected until some time after the + instruction which caused it is executed. (4/21) + +unix/boot/spp/rpp/rpprat/endcod.r [pcix] +unix/boot/spp/rpp/rppfor/endcod.f [pcix] + Modified the SPP compiler to insert a call to ZZEPRO (see above) + to every SPP function or procedure. The call is made just before + the function exits. Note that since the check is only made at + the exit from a function, the exception condition often will be + detected in a routine called by the routine in which the + exception condition occurred. For example, if A does a 5.0/0, + then calls B, then B exits, the exception conditition will be + detected by the ZZEPRO call at the end of B. In all cases however, + it won't be very long before the exception condition is detected. + If external C or Fortran code is called an exception will not be + detected until execution resumes in an SPP function. (4/21) + +unix/os/zxwhen.c [pcix] + Added exception handling support for MacOSX. Also, ex_handler + (the exception handler) was changed from static to public so that + it could be called from ZZEPRO. (4/21) + +unix/as.macosx/zsvjmp.s [pcix] + 1. New version of ZSVJMP for MacOSX. This was very tricky to + implement for this platform but it appears to be working now. + ZSVJMP was difficult as it needs to call the host "setjmp" to + do the real work, but MacOSX has only dynamic libraries, so + the routine has to invoke setjmp from the system shared library + from the assembler code! (I think we need to do away with the + assembler version of ZSVJMP - might be possible by adding some + C code generation to e.g. F2C, so that the PC-IRAF implementations + at least could avoid assembler). + 2. New routines GFPSCR and SFPSCR added to get and set the FPSCR + register on MacOSX. (4/21) + +unix/as.macosx/ieee.gx [pcix] + Modified the invalid exception masking support for MacOSX. + Normally floating invalid exceptions are enabled, meaning that if + a NaN or Inf is encountered the invalid operand exception is + invoked. The invalid exception has to be masked in the IEEE + handling code, to allow IEEE NaN/Inf to be detected and replaced + when reading in floating data. (4/21) + +pkg/images/immatch/src/imcombine/t_imcombine.x +pkg/images/immatch/src/imcombine/src/icombine.x +pkg/images/immatch/src/imcombine/src/icsetout.x +pkg/images/immatch/src/imcombine/src/icmask.x +pkg/images/immatch/src/imcombine/src/iclog.x + The projection option was no longer working. There was a typo in + t_imcombine.x, the dimensionality of the image was not set + properly in icombine.x and icsetout.x, and the masks for projected + images was not correct. (4/22/02, Valdes) + +unix/hlib/install +unix/hlib/install [pcix] + Fixed a typo ('MAG' -> 'MSG' on line 1023). (4/22/02, MJF) + +unix/hlib/install +unix/hlib/install [pcix] + Modified to skip the /dev fifo and iraf user login checks which + aren't appropriate for OS X. (4/23/02, MJF) + +unix/boot/spp/xc.c + We had reports of XC not working properly with long filenames. + Changed a 256 char buffer in sys() to SZ_PATHNAME, and also + found a call to symlink() that was dimensioned 128 on the output + buffer even though the actual buffer was SZ_PATHNAME. (4/23) + +images$imutil/src/imadiv.gx +images$imutil/src/generic/imadiv.x + Fixed an error in the imarith code which evaluates an expression of the + form "inimage / 0". This was causing a bus error on the OSX but + apparently not on any other platform. (4/24/02, LED) + +local/.login [pcix] +local/.cshrc [pcix] + Modified to set proper environment for OS X (4/24/02, MJF) + +pkg/images/immatch/src/imcombine/src/icmask.x + The fix of 4/8/02 had been inadvertently undone. (4/25/02, Valdes) + +sys/imio/impmhdr.x + The im_pmldhdr code could go into an infinite loop when reading + a malformed PL imio save header. (4/25) + +sys/imio/iki/fxf/zfiofxf.x + The fxfzop routine had some invalid code at the end of the routine + which was incorrectly trying to set FPKOSFN in what it thought was + the parent file descriptor. (4/25) + +unix/hlib/install +unix/hlib/install [pcix] + 1) Not all failed tests were properly incrementing the error + counter leading to a confusing "successful" install. 2) Added a + new procedure to install symlinks to the .login/.cshrc files for + OS X installs where it's not easy to change the iraf user login + directory. Once the iraf path is edited into the files symlinks + are made in the account directory, which is normally /Users/iraf, + so the iraf user still have the proper environment. (4/26/02, MJF) + +unix/hlib/install +unix/hlib/install [pcix] + 1) The OS X csh didn't like if-stmts without a then/endif when the + test failed, changed all such occurrances. 2) Fixed small problem + with SunOS constructing the recommended hosts file entry. 3) Changed + the file ownership check from a fatal error to a warning. (4/30, MJF) + +pkg/images/imtuil/src/t_imstat.x +pkg/proto/masks/t_mimstat.x +pkg/proto/masks/rsstats.x + If nclip > 0 and the initial mean and standard deviation are INDEF + (a very unlikely occurence unless there is an input mask) the ksigma + limit computation in the imstatistics, mimstatistics, and rskysub + tasks could overflow. This does not affect released code. (5/01/02, + Davis) + +local/notes.solaris - +local/notes.linux [pcix] - +local/notes.freebsd [pcix] - +doc/ports/notes.linux + +doc/ports/notes.freebsd + +doc/ports/notes.solaris + + Moved these old platform porting files to doc/ports. (5/02) + +local/notes.v212 + + Created a new system notes file for V2.12. (5/02) + +---------------------------------------- +V2.12 EXPORT release. (May 2, 2002) |