------------
From: /u2/davis/ Thu 16:47:49 01-Aug-85
Package: images
Title: new images tasks
 
The tasks ROTATE, IMLINTRAN and GEODISTRAN have been added to the images
package. ROTATE rotates and shifts an image. IMLINTRAN will rotate, rescale
and shift an an image. GEODISTRAN corrects an image for geometric distortion.

------------
From: /u2/davis/ Fri 18:14:12 02-Aug-85
Package: images
Title: new images task
 
A new task GEOMAP has been added to the images package. GEOMAP calculates
the spatial transformation required to map one image onto another.

------------
From: /u2/davis/ Tue 08:27:09 06-Aug-85
Package: images
Title: imshift bug
 
Imshift was shifting incorrectly when an integral pixel shift in x and
a fractional pixel shift in y was requested. The actual x shift was
xshift + 1. The bug has been fixed and imshift will now work correctly for
any combination of fractional and integral pixel shifts

------------
From: /u2/davis/ Fri 10:53:18 09-Aug-85
Package: dataio
Title: reblock mod
 
The task REBLOCK has been modified so that it will trim as well as pad
logical records.

------------
From: /u2/davis/ Fri 15:05:31 09-Aug-85
Package: math
Title: math documentation
 
The documentation for the 2D interpolation routines has been added
to the math package.

------------
From: /u2/davis/ Mon 15:55:45 12-Aug-85
Package: math
Title: gsurfit package
 
A set of routine for fitting surfaces and accompanying documentation
have been installed in the math package.

------------
From: /u2/davis/ Tue 08:26:19 01-Oct-85
Package: images
Title: fmedian, median
 
Two median filtering tasks have been added to the images package. Fmedain
is a fast median processing routine which utilises the image histogram to
calculate the median at each window position. Fmedian is best suited to
integer data. Median is a more general routine which uses a sorting technique
but takes longer to execute.

------------
From: /u2/davis/ Thu 17:06:15 03-Oct-85
Package: images
Title: minmax bug
 
Minmax was not calculating the minimum correctly for integer images.

------------
From: /u2/davis/ Mon 10:51:05 21-Oct-85
Package: images
Title: imsurfit bug
 
An error in pixel rejections cycle of IMSURFIT corrected. The routine 
make_ranges was not successfully converting a sorted list of rejected pixels
into a list of ranges in all cases.

------------
From: /u2/hammond/iraf/ Tue 16:45:33 29-Oct-85
Package: dataio
Title: New task installed
 
Task rtextimage, which converts text files to IRAF images, has been installed
in the dataio package.

------------
From: tody Thu Nov  7 22:25:20 MST 1985
Package: cl
Title: foreign tasks in the CL

    A new type of task called a "foreign task" has been added to the CL.  This
facility was added primarily to provide an improved interface for the bootstrap
utilities XC and MKLIB, but may be used to access any host system utility to
enhance one's personal IRAF environment.  The foreign task facility is a type
of OS escape, hence should not be used in mainline software.

One ore more foreign tasks may be defined with the TASK statement by setting
the "physical task name" to the special value "$foreign", e.g.,

	task $xc, $mklib, $make = "$foreign"

A foreign task, once defined, may be called by name like any other IRAF task,
without the overhead of processing a script task containing an OS escape.
The argument list of a foreign task is parsed exactly like that of any other
task, allowing the string value of a parameter to be generated by any CL
expression.  Full i/o redirection is supported.

A foreign task is run by passing a string command to the host system with
ZOSCMD.  The command is built up by concatenating the task name with the
values of the argument strings in the order in which they appear on the command
line, inserting a blank between each string argument.  Foreign tasks may have
parameter files, but normally there will be no parameter file and the arguments
will be given in the same syntax one would use when operating outside the CL.
This provides a more direct interface and eliminates needless restrictions and
the need to learn a second syntax for the same command (e.g., xc and xcompile).

An additional advantage of the foreign task interface is that i/o redirection
is implemented without the temporary files used for !cmd type OS escapes.
In other words, given a command such as

	xc -cO file1.x file2.x >& spool &

output will be written directly into the spool file during task execution,
rather than copied to the spool file after task execution.  This prevents
stdout and stderr from being separated and permits use of TAIL during execution
to see how things are going (at least on UNIX).

Since flags beginning with - are so common in UNIX, "lexmodes" has been
enhanced to treat arguments beginning with a minus (or plus) sign as string
constants.

The softools tasks XC, MKLIB, and MAKE have been redefined as foreign tasks
and the new version of the CL which supports foreign tasks has been installed.
MAKE will probably be deleted from softools in the near future.
------------------------------------------------------------------------------

sys/clio/zfiocl.x
	In zardps(), in the first call to zardpr, changed the third argument
	to SZ_NUMSTR * SZB_CHAR; would cause XFER failure on AOS.  (11/8 dct)

pkg/cl/unop.c
pkg/cl/gram.c
pkg/cl/operand.h
	Added a new CL intrinsic function osfn().  This function takes a
	virtual filename as input and returns a host system filename as output.
	(11/9 dct)

sys/os/zfiotx.c		[UNIX]
	Modified terminal (text file) driver to mask parity bit when reading
	from the terminal in raw mode.  (11/10 dct)

pkg/cl/*
	Merged revisions from the VMS version of the cl into the unix sources.
	These consisted mostly of VMS/C compiler workarounds, some allocate
	stuff (deactivated in unix/iraf currently), and other minor changes.
	(11/11 dct)

sys/fio/ffault.x
	When faulting in the FIO buffer on a write-only file, not at EOF,
	the ITOP pointer would be set to the start of the buffer rather than
	to the end, as it is if the buffer is actually filled from the file.
	When the buffer is later flushed the amount of data written would be
	less than a full buffer if the full buffer had not been written into.
	Modified to set ITOP to BP+BUFSIZE when filling the buffer on a write
	only random access file, not at EOF.  (11/13)

sys/gio/stdgraph/stgencode.x
	Changed the code for \ch in compile mode to push the escaped character
	rather than output it.  Reversed the arguments to ; (goto) to match
	the order described in the documentation.  (11/14)

sys/gio/stdgraph/tshowcap.x
	Installed a new version which supports boolean capabilities, scan
	cursor, etc.  (11/14)

sys/libc/cmain.c
	Deleted this file from the library, since it causes linker problems and
	it no longer used (cl.x defined ONENTRY and calls c_main directly).
	(11/15)

pkg/cl/task.h
pkg/cl/builtin.c
	Added user definable OSCMD prefix strings to the foreign task interface.
	This removes the restriction that the host task name be equivalent to
	the logical task name, e.g., permitting calling the host task with a
	full pathname, with a different name, with switches, etc.  (11/15)

pkg/cl/builtin.c
pkg/cl/task.h
	Generalized the foreign task interface to permit user specification
	of the foreign command prefix string.  In the case

		task	$ltname = $foreign

	the foreign command prefix string defaults to "ltname", and multiple
	foreign tasks may be declared in a single statement.  In the case

		task	$ltname = $prefix

	the command sent to the host system will begin with the given prefix
	string, which may be different from the ltask name and which may
	contain whitespace.  For example,

		task	$who = "$show users"

	will perform the UNIX "who" function on a VMS system.  On a UNIX
	system,
		
		task	$renice = "$/etc/renice"

	would make the renice task available as a CL task, even though the
	/etc directory is not normally in one's search path.  (11/16)

sys/os/zwmsec.c
sys/os/Makelib
lib/libc/knames.h		KERNEL CHANGE
-------------------------------------------------------------------------------
	New module ZWMSEC added to package OS.  The new kernel operator
	suspends process execution for the indicated number of milliseconds.
	(11/18)
-------------------------------------------------------------------------------

sys/fmtio/printf.h
	Changed the size of the internal printf buffer from SZ_LINE to 1024
	to reduce the possibility of truncation when printing strings.  (11/27)

sys/fmtio/Makelib
	Several files which included printf.h did not list it as a dependency
	in the Makelib file.  (11/27)

sys/etc/main.x
	Did not permit parameters with upper case names.  (11/27)

pkg/cl/exec.c
	Simplified the mk_startupmsg procedure slightly, while looking for
	a problem that turned out to be elsewhere.  (11/27)

pkg/cl/task.h
	Two of the T_XXX task bit flags had the same value.  (11/27)

pkg/cl/bkg.c
	When a new CL is installed while someone is using the old one,
	the core image bkgfile produced when a bkg job is submitted by
	the old CL may not be usable by the new CL.  The CL checks for
	this when reading the bkgfile, but error recursion was occurring
	due to the call to EPRINTF to report the error.  This was replaced
	by a call to fprintf(stderr since EPRINTF is higher level (it
	requires a stacked task descriptor which is not there until the
	bkg file has been read) and cannot be used during process startup.
	(11/27)
