[net.micro.cpm] New enhanced CP/M CCP including CSH-history available

michaelk@copper.UUCP (Michael Kersenbrock) (10/27/86)

Subject:


--------

An update to "CCP104+.LBR" is now available from the simtel20 archive.
Used is the name "CCP105P.ARC" instead of "CCP105+.ARC" because the "+" is
a reserved character in Tops-20.

Filename			Type	 Bytes	 CRC

Directory PD:<CPM.CPM3>
CCP105P.ARC.1			BINARY	126592  3993H

		>-----------------------<

Mike Kersenbrock
Sept 1986
Aloha, Oregon
USENET: tektronix!copper!michaelk


Version 1.05 incorporates the following features (over and above 1.04):

1.	Provides a built-in history mechanism similar to that in
	Berkeley-Unix's CSH ("sea-shell").  Included is a built-in
	command "h" that diplays the history.  See beginning of
	package's file "history.doc" for more details.


2.	Provides detached enhancement ability.  An additional routine can be
	executed just before the history routine.  If a file named
	"CCP.EXT" exists on the "temporary disk" (set by setdef), then for
	each command line processed by CCP, that routine is loaded to
	address 6000 (hex) and "called".

	The intended purpose of this "hook" is to allow a HLL or MLL
	routine to be written for easy enhancements.  The language in
	mind is "C", and an example test case has been provided in the
	distribution.


3.	Provides a fix to CP/M Plus's handling of lines that start with a colon.
	"With" the fix, the "return code" is NOT reset with every command line
	executed, but IS reset upon cold boot.

	The purpose of this is to allow this author's port of the
	"Aussie-Make" to properly terminate make-execution upon
	an step-wise error (I posted this "make" to net.micro.cpm).

	For this to work, one's compilers, linkers, assemblers, etc need
	to set the return-status upon error.  I have included in my
	distribution, several RSX examples -- the ones I use on several
	of my software tools -- that cause my software to set the
	return-status.  They should be easy to modify for "your" tools.


4. 	I reinstituted the conditional-assembly flag that when used,
	makes the user NOT be in the prompt when the user number
	is ZERO.  This author doesn't use non-0 user spaces,
	and likes a "non-busy" prompt.  Set the other way, the original
	code is reinstituted, so there shouldn't be a problem with other
	people's builds.  


5.	With these features, the CCP remains less than 4K (albeit, getting
	close).  All added enhancements are conditionally assembled.

6.	Quite a few auxillary files are included into the distribution
	for development use.  Some may be useable "asis", and some should
	be useable as templates that can be modified for other systems.




-- 

Mike Kersenbrock
Tektronix Computer Aided Software Engineering
Aloha, Oregon