This version of CCL is a composit of the work of Angle Li at the
University of Miami, Paul Sorenson at Michigan State University, and Jim
Downward at KMS Fusion. Angle Li edited the code to remove all the funny
F4P lables and to comment the code. In addition he conditionalized the
internal commands so that section could optionally not be included.
Look for the symbols $DCL and $PIP in CCL.MAC to see what effect the
deleting the conditional code would have. Paul Sorenson then provide
a substanitial rewrite to CCL to provide significantly more flexible
command string parsing. I then fixed some bugs with the the changes,
added some additional special characters and packaged this latest release
for DECUS.
To simplify use of CCL for user's(like myself) who often assign a local
LB:(to do a sysgen). The location of SYSCCL.CCL has been moved to LB1:
(unless symbol $LB0 is defined in PRECCL.MAC). To use CCL, please do a global
assign of LB1: to a physical disk either in VMR or in STARTUP.CMD.
As was previously mentioned, this version of CCL has been extensively
rewritten to provide a more flexible command format. The major changes that
must be kept in mind for this newest version are,
1) All conditional assembly directives are now in PRECCL.MAC
for easier access (see comments for their affects).
They are $LB0,$PIP,$DCL, and $TABLE.
2) An internal table lookup has been added to offer a compromise
between DCL and the .CCL files. (see comments in CCL.MAC)
3) Several new parameters have been defined -- %A%, %B%, %C% and %0%
%A% is set the the entire character string past the command.
%B% is set to character string up to first space
%C% is defined as everything not in %B% (excluding delimiter)
%0% is set to values of any leading switches
(e.g. BRU/REW/VER, %0%=/REW/VER)
4) Two options have been added for command building. If a
parameter is null, it may be replaced by a string starting with
the key character "\" and extending to the % delimiter, also,
a parameter may be tested by %2?S1\S2% which will insert string
"S1" if parameter 2 is defined, otherwise string "S2" will be
inserted (either S1 or S2 may be null).
5) A command line may extend to the next line by including the "+"
character as the last character in the line.
6) USERCCL.CCL is opened on the user's logon UIC rather than the
current default UIC.
7) If CCL can not find a command, it will try sending off its
command to another catchall ...CA2.
8) %R is a special character signifying that CCL is to ring the
terminal BELL when it exits. A previous version used %B for this.
Sorry for the incompatability.
9) %D is added to aid in debugging CCL command lines. When it is
encountered, the command up to that point is displayed in
expanded format at the user's terminal rather than being sent
to MCR.
9) %P is added to signify that an action line is to be printed out
on TI:. This makes it very easy to create CCL commands which
send escape sequences to control terminal characteristics.
10) %Q is added to signify that CCL should exit without sending on
the command to MCR if a required input field is defaulted with
a null (ie %1\%) and the input parameter is also a null.
This prevents various PIP like commands from occuring with
no files specified which often results in defaulting to the
entire directory.
11) Two possible TABLE macro files are offered. TABLE.BIG has all
kinds of CCL commands and results in a significantly larger
CCL. TABLE.KMS includes only those commands which used to
be processed by the internal DCL code. If the PIP-like
internal CCL commands are not selected for assembly and the
TABLE.KMS commands are selected, CCL stays about the same
size and has identical functionality. TABLEGEN.CMD allows
the user to create an internal CCL file.
12) CCLGEN allows the user to select amoung the ever widening
variety of options. If the user desires to use an internal
table, CCLGEN will allows the user to link to TABLEGEN.CMD
to create an internal table from a standard CCL file
(USERCCL.CCL or SYSCCL.CCL for example).
13) CCL now checks to see if the keyword typed in is longer than
the maximum specified in the file (previously was ignored). This
means that commands FOO and FOOY can be different and distinct.
14) Documentation and HELP files have been updated to reflect
the many, many new features
Active contributers to CCL now include
Mr. Angel Li
RSMAS/MPO
University of Miami
4600 Rickenbacker Cswy.
Miami, Fl. 33149
(305)-350-7491
Paul Sorenson
Dept. of Physiology
Mich. State Univ.
E. Lansing, MI 48824
(517)-355-5125
And myself,
James G. Downward
KMS Fusion, Inc
PO Box 1567
Ann Arbor, Mi 48106
(313)-769-8500