Google
 

Trailing-Edge - PDP-10 Archives - ap-c796e-sb - crf53.rnd
There are no other files named crf53.rnd in the archive.
.;16-FEB-77-GR
\\
.LM0;.RM70;.F;.J.FLAG CAP;.SP1;.TS5
^^CREF.DOC\\ -- ^CHANGES FROM ^V52(27) TO ^V53(53)
.BR
^JANUARY 1977
.FG30
^COPYRIGHT (^C) 1972,1974,1976,1977
.BR
^DIGITAL ^EQUIPMENT ^CORPORATION, ^MAYNARD, ^MASS.
.B 2
^THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY ON A
SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH THE INCLUSION
OF THE ABOVE COPYRIGHT NOTICE. ^THIS SOFTWARE, OR ANY OTHER
COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE
TO ANY OTHER PERSON EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO
AGREES TO THESE LICENSE TERMS. ^TITLE TO AND OWNERSHIP OF THE
SOFTWARE SHALL AT ALL TIMES REMAIN IN ^^DEC\\.
.B 1
^THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY ^DIGITAL
^EQUIPMENT ^CORPORATION.
.B 1
^^DEC\\ ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY ^^DEC\\.
.T <CRF53.DOC
.PG
<CREF.DOC -- ^CHANGES FROM ^V52(27) TO ^V53(53)
.BR
^JANUARY 1977
.B 3
1.0##<SUMMARY
.B 1
<CREF 53(53) IS <CREF %52^A(27) WITH A SOMEWHAT-ENHANCED COMMAND SCANNING AND PARSING
ROUTINE, PLUS GENERAL EDITS TO CLEAN UP THE OVERALL USER-INTERFACE.  ^THERE HAVE BEEN
NO CHANGES MADE TO THE ACTUAL INNER WORKINGS OF HOW <CREF PROCESSES
INPUT FILES TO GENERATE THE CREF LISTING.
.B 1
<CREF %52^A(27) RUNS ON ALL SUPPORTED 5 AND 6 SERIES MONITORS UP TO AND INCLUDING
6.03.  <CREF 53(53) IS FULLY UPWARDS COMPATIBLE WITH <CREF %52^A(27) EXCEPT FOR ITS
MORE STRINGENT REQUIREMENTS ON COMMANDS (PREVIOUS ILLEGAL OR ILLOGICAL COMMANDS
WHICH COULD SLIP THROUGH EARLIER VERSIONS WILL BE FLAGGED AS ERRORS
BY THIS VERSION - ALSO OLD ALTMODES ARE NO LONGER TREATED AS BREAK CHARACTERS BUT
RATHER AS NORMAL <ASCII GRAPHIC CHARACTERS; THE "__" CHARACTER IS
BEING PHASED OUT AND REPLACED BY THE "=" CHARACTER).
.B 1
<CREF IS DOCUMENTED IN ^SOFTWARE ^NOTEBOOK ^VOL.#8.
.B 3
2.0##<EXTERNAL <CHANGES
.B 1
^THE MAJOR DIFFERENCE BETWEEN <CREF 53(53) AND EARLIER VERSIONS OF <CREF IS IN THE
INTERFACE WITH THE TERMINAL USER (TYPED-IN COMMANDS, ERROR MESSAGES, ETC.).
.B 2
2.1##^THE ^SAVED ^CORE ^IMAGE
.B 1
<CREF %52^A(27) HAD NON-ZERO DATA IN IT'S LOW SEG AND SO HAD A <.LOW FILE.
^SINCE THIS CAN CAUSE LOTS OF UNNECESSARY OVERHEAD (FORCES THE MONITOR
TO ALWAYS GO TO DISK TO GET THE CORE IMAGE RATHER THAN BEING ABLE TO READ
IT DIRECTLY OFF THE SWAPPING AREA - WHICH IS MUCH FASTER)
<CREF 53(53) HAS MOVED ALL THIS DATA INTO IT'S HIGH SEG.
.B 2
2.2#^TYPED-^IN ^COMMANDS
.B 1
<CREF<'S COMMAND SCANNER HAS BEEN ENHANCED AND MODIFIED TO BE MORE CLOSELY COMPATIBLE
WITH THE REST OF THE <TOPS10 WORLD.  ^SPECIFICALLY, THE CONVENTIONS
USED BY <SCAN HAVE BEEN ADOPTED WHEREVER APPLICABLE.
.PG;.B 1;.LM 9;.I -4
1.##^COMMAND ^SYNTAX
.B 1
^MANY ILLEGAL OR OTHERWISE ILLOGICAL SYNTAXES THAT EARLIER VERSIONS OF <CREF
WOULD ACCEPT HAVE BEEN DIS-ALLOWED.  ^THIS IN NO WAY AFFECTS OTHERWISE LEGAL COMMAND
CONSTRUCTIONS.  ^FOR EXAMPLE <CREF %52^A(27) WOULD ALLOW YOU TO SPECIFY
DEVICE <DSK: AND  PPN [1,2] BY TYPING "<DS[1,2]K:" BUT THE (LEGAL TO <SCAN)
COMMAND "<.FOO <MUMBLE <BLAH:" (TO SPECIFY FILE <BLAH:MUMBLE.FOO) WOULD
BE INTERPRETED BY <CREF AS MEANING <FOOMUM:CREF.CRF!
.B 1;.I -4
2.##^OLD ^ALTMODES
.B 1
^THE <ASCII CHARACTERS - (TILDE AND RIGHT CURLY BRACE - OCTAL CODES 175 AND 176 RESPECTIVELY)
ARE, IN KEEPING WITH MODERN STANDARDS, NO LONGER CONSIDERED TO BE BREAK CHARACTERS - THE
SO-CALLED OLD ALTMODES.  ^THEY ARE NOW JUST 2 OTHER <ASCII PRINTING CHARACTERS
LIKE THE LETTERS OR "%".  ^IF THE USER WISHES TO CONTINUE USING THE (TILDE AND RIGHT
CURLY BRACE) AS OLD ALTMODES THEN HE MAY USE THE MONITOR COMMAND
"<.TTY <ALTMODE" TO PASS THEM AS _<<ESC> (OCTAL CODE 33) TO HIS PROGRAMS.
.B 1;.I -4
3.##^DESTINATION#-#^SOURCE ^SPECIFIER
.B 1
^IN KEEPING WITH MODERN CONVENTIONS THE "__" CHARACTER (UNDERSCORE OR LEFT-ARROW - OCTAL CODE 137) IS NO LONGER
USED TO DELIMIT THE DESTINATION OR OUTPUT FILE SPECS FROM THE SOURCE OR
INPUT FILE SPECS.  ^THE USER SHOULD NOW USE THE "=" (EQUAL SIGN,
OCTAL CODE 075) FOR THIS PURPOSE.  ^THE "__" CHARACTER IS DEDICATED TO USE
IN NETWORK NODE SPECIFICATIONS.  ^FOR THE TIME BEING, <CREF WILL CONTINUE TO
ACCEPT "__" BUT WILL ISSUE A WARNING MESSAGE TO ANNOY YOU.
.B 1;.I -4
4.##^DEFAULT <PPN ^SPECIFICATIONS
.B 1
^YOU MAY NOW TYPE CONSTRUCTS LIKE "[,] OR "[,4321]" (I.E., NULL PROJECT OR
PROGRAMMER FIELDS) TO SPECIFY DEFAULT (LOGGED-IN) PPN ATTRIBUTES.  "[-]" MEANS USE THE JOB'S DEFAULT PATH.
<SFD FIELDS IN THE PATH SPECIFICATION MAY NOT BE LEFT NULL.  ^THE TRAILING
"]" IS NEEDED ONLY IF FURTHER FILE SPECS FOLLOW WHICH NEED TO BE DELIMITED FROM THE PATH SPECIFICATION.
.B 1;.I -4
5.##^RANDOM ^ILLEGAL ^CONTROL ^CHARACTERS
.B 1
^CHARACTERS SUCH AS ^CONTROL-^A OR ^CONTROL-^F ARE NO LONGER ALLOWED
(^SYNTAX ERROR) IN COMMAND STRINGS.
.PG;.B 1;.I -4
6.##^COMMENTS
.B 1
^THE ";" (SEMICOLON) CHARACTER IS NOW RECOGNIZED AS A COMMENT
CHARACTER.  ^WHEN A ";" IS ENCOUNTERED IN THE COMMAND INPUT STREAM THEN IT
AND ALL TEXT UP TO THE NEXT BREAK CHARACTER WILL BE IGNORED.  ^NOTE THAT
THE SOMETIMES COMMENT CHARACTER "!" IS STILL USED FOR SPECIFYING A
"<RUN" COMMAND TO THE FILE WHOSE FILE SPECS IT TERMINATES.
.B 1;.I -4
7.##^CONTINUATION
.B 1
^FOLLOWING <SCAN<'S CONVENTIONS, IF A "-" CHARACTER IS THE LAST NON-BLANK NON-COMMENT CHARACTER
ON A COMMAND LINE THEN BOTH IT AND THE BREAK CHARACTER (AND ANY COMMENTS)
WILL BE IGNORED AND <CREF WILL CONTINUE TO ACCEPT COMMAND INPUT.
^IF THE COMMAND DEVICE IS THE USER <TTY AND A LINE OF INPUT HAS NOT ALREADY BEEN
TYPED (AS IN TYPED AHEAD) THEN <CREF WILL OUTPUT A "_#" CHARACTER TO PROMPT YOU.
.B 1;.I -4
8.##<SFD<'S
.B 1
<CREF 53(53) WILL NOW ACCEPT <SFD PATH SPECIFICATIONS IN ALL FILE PATH SPECS.
^NULL <SFD<'S ARE ILLEGAL.
.B 1;.I -4
9.##^COMMAND ^FILES
.B 1
<CREF WILL NOW RECOGNIZE THE "@" CHARACTER AS MEANING THAT THE CURRENT FILE
SPECS ARE TO BE TREATED AS AN INDIRECT COMMAND FILE.  ^THE "@" MAY APPEAR ANYWHERE
IN THE FILE SPECS.  ^IF AN INDIRECT COMMAND FILE IS TO BE USED THEN IT MUST BE
THE FIRST SET OF FILE SPECS ON THAT COMMAND LINE (EVERYTHING FOLLOWING WILL BE IGNORED).
.B 1;.I -5
10.##<CCL ^ENTRY AND THE ^MONITOR <CREF ^COMMAND
.B 1
^THE USER MAY NOW TYPE OPTIONAL ARGUMENTS TO THE <CREF MONITOR COMMAND.  ^IF NO
ARGUMENTS ARE SPECIFIED THEN THE COMMAND WORKS JUST AS IT DID WITH EARLIER VERSIONS.  ^THE
ARGUMENTS MAY BE EITHER <CREF SWITCHES OR FILE SPECIFICATIONS (WITH OPTIONAL SWITCHES).
.B 1
^IF THE USER SPECIFIES JUST <CREF SWITCHES IN THE <CREF COMMAND (E.G., "<.CREF/O/R") THEN
THOSE SWITCHES WILL BE REMEMBERED AND APPLIED TO ALL FILES BEING PROCESSED IN
THE CURRENT <CCL REQUEST (TYPICALLY FOLLOWING A <COMPILE/CREF MONITOR COMMAND).
.B 1
^IF THE USER TYPES FILE SPECIFICATIONS IN THE <CREF COMMAND (E.G., "<.CREF <LPT0:=BLAH/P") THEN THE
REST OF THE LINE FOLLOWING THE "<CREF" COMMAND WILL BE TREATED AS IF THE
USER HAD FIRST TYPED ".^R <CREF" THEN TYPED THE REST OF THE COMMAND
("<LPT0:=BLAH/P").  ^AFTER THE COMMAND HAS BEEN PROCESSED <CREF WILL EXIT - NO
ATTEMPT WILL BE MADE TO ALSO LOOK FOR <CCL COMMAND FILES TO READ.
.PG;.B 2;.LM 0
2.3##^MULTIPLE ^INPUT ^FILES
.B 1
^WHEN MULTIPLE INPUT FILES ARE SPECIFIED TO <CREF ALL FILES IN THE COMMAND STRING (THE
INPUT FILES OF COURSE) WILL NOW BE DELETED.  ^FORMERLY, ONLY THE LAST FILE
SPECIFIED GOT DELETED.  ^DUE TO THE VAGARIES OF <CREF<'S
COMMAND SCANNER ALL PROCESSING SWITCHES (E.G., "</O" OR "</K") MUST BE GIVEN NO LATER
THAN THE FIRST INPUT FILE SPEC.  ^SWITCHES SUCH AS "/^A" AND "/^B" WORK ON THE INDIVIVIDUAL FILE SPEC
TO WHICH THEY ARE ATTACHED.  ^NOTE ESPECIALLY THAT TO PRESERVE THE INPUT FILES (IF THEY ARE NOT OTHERWISE PROTECTED AGAINST
BEING DELETED) THE "/^P" SWITCH MUST BE SPECIFIED NO LATER
THAN THE FIRST COMPLETE FILE SPEC!
.B 1
^ONE OTHER THING THE USER SHOULD BE AWARE OF IS THAT IF <CREF FINDS
A SYNTAX ERROR IN THE COMMAND STRING (E.G., "<.DSK:") THEN THE ENTIRE
COMMAND WILL BE ABORTED - ANY FILES THAT HAVE ALREADY BEEN PROCESSED
FOR THAT COMMAND WILL HAVE BEEN DELETED, AND THE OUTPUT WILL BE
LOST (THE USER WILL HAVE TO REGENERATE THE INPUT <.CRF FILES AGAIN).
.B 2
2.4##^ERROR ^MESSAGE ^TYPEOUT
.B 1
^THE HANDLING OF ERROR MESSAGES BY <CREF HAS BEEN CLEARED UP SOMEWHAT
TO PROVIDE A NICER AND MORE CONSISTENT ERROR FACILITY, AGAIN
MAINTAINING COMPATIBILITY WITH <SCAN.
.B 1;.LM 9;.I -4
1.##^UPPER/^LOWER ^CASE
.B 1
^ALL ERROR MESSAGES NOW APPEAR IN THE STANDARD <DEC FORMAT OF LEADING CHARACTER
["?", "%", OR "["] FOLLOWED BY THE SIX-CHARACTER ERROR CODE OR "PREFIX"
FOLLOWED BY THE TEXT BODY OF THE ERROR MESSAGE ITSELF (FOLLOWED BY A "]" TO
TERMINATE THE MESSAGE IF IT WAS LEAD OFF WITH A "[").  ^ALL ERROR MESSAGES
APPEAR IN UPPER AND LOWER CASE FOR NEATNESS.  (^THE PREFIX IS ALWAYS UUPER
CASE ONLY, AS ARE ALL FILE SPECS THAT ARE TYPED OUT.)
.B 1;.I -4
2.##</MESSAGE:(PREFIX,FIRST,CONTIN)
.B 1
^THE STANDARD (ERROR) MESSAGE OUTPUT FORMAT IS ADHERED TO.  ^THE "</MESSAGE" SETTING IN
THE USER'S WATCH WORD IS USED TO DETERMINE WHICH FIELDS ARE ACTUALLY TO BE PRINTED
ON THE USER'S <TTY.  ^IF ALL SETTINGS ARE BLANK THEN <PREFIX AND <FIRST ARE
ASSUMED.  (^NOTE THAT <CREF DOES NOT HAVE A </MESSAGE SWITCH - IT CAN ONLY READ
THE WATCH WORD TO SEE WHAT THE USER JOB HAS SET.)
.PG;.B 1;.I -4
3.##^NEW ^MESSAGES
.B 1
<CREF 53(53) HAS THE FOLLOWING NEW MESSAGES FOR YOUR AMUSEMENT:
.B 1;.LM 13;.I -4
A.##<%CRFPUE ^PLEASE ^USE "=" ^RATHER ^THAN "__"
.B 1
^THE UNDERSCORE (OR LEFT ARROW ON SOME <TTY<'S - OCTAL CODE 137) IS RESERVED
FOR USE BY NETWORK PROTOCAL TO SPECIFY NODES.  ^THE "=" CHARACTER SHOULD BE USED INSTEAD.
.B 1;.I -4
B.##<%CRFSIH <"/H" OR <"/R" ^SWITCH ^ILLEGAL ^IN <SWITCH.INI
.B 1
^THE TWO SWITCHES <"/R" AND <"/H" ARE ILLEGAL WHEN SPECIFIED IN <SWITCH.INI
DEFAULTING.  ^THE <"/H" WOULD NEVER LET YOU GET ANY WORK DONE - THE PHILOSOPHY
OF THE <HELP SWITCH IS THAT WHEN IT IS ENCOUNTERED THE HELP MESSAGE
IS OUTPUT TO THE USER'S <TTY AND THE CURRENT COMMAND IS ABORTED.  ^THE <"/R" SWITCH
HAS NO COMPLEMENT AND SO CAN NOT BE TURNED OFF ONCE YOU HAVE SET IT
(IT'S CLEARED AT THE START OF EVERY COMMAND BUT IF IT'S
ALSO SET EVERY COMMAND YOU'RE STUCK) SO IT HAS BEEN MADE ILLEGAL.
.B 1;.I -4
C.##<%CRFSII ^SYNTAX ^ERROR ^IN <SWITCH.INI ^DEFAULTS
.B 1
<CREF IS UNABLE TO READ <SWITCH.INI DUE TO SOME CONSTRUCT IN <SWITCH.INI WHICH IS ILLEGAL
(FOR EXAMPLE TRYING TO GIVE FILE SPECS).  <SWITCH.INI WILL BE IGNORED.
.B 1;.I -4
D.##<%CRFSIO <I/O ^ERROR ^WHILE ^READING <SWITCH.INI
.B 1
^IN PROCESS OF READING <SWITCH.INI <CREF GOT AN <I/O ERROR OF SOME
TYPE.  <SWITCH.INI WILL BE IGNORED, DEFAULTING WILL NOT OCCUR.
.B 1;.I -4
E.##<?CRFUKS ^UNKNOWN ^SWITCH
.B 1
^THE USER (OR <SWITCH.INI) SPECIFIED AN ILLEGAL SWITCH.  ^IF THE ILLEGAL SWITCH
APPEARED IN <SWITCH.INI THEN THE FACT WILL BE NOTED IN THE MESSAGE.
.B 1;.I -4
F.##<?CRFCDN ^CAN'T ^GET ^COMMAND ^FILE ^DEVICE
.B 1
^THE DEVICE SPECIFIED IN THE COMMAND STREAM AS THE NEW INDIRECT COMMAND
FILE DEVICE CANNOT BE <OPEN<ED BY <CREF.
.B 1;.I -4
G.##<?CRFCLC ^CAN'T <LOOKUP ^COMMAND ^FILE
.B 1
^THE INDIRECT COMMAND FILE SPECIFIED IN THE INPUT STREAM CANNOT BE FOUND FOR READING BY <CREF.
.PG;.B 1;.I -4
H.##<?CRFIBP ^INPUT ^BUFFER ^SIZE ^PHASE ^ERROR
.B 1
^THIS ERROR CAN ONLY HAPPEN ON MULTIPLE INPUT FILES.  ^SINCE THE INPUT BUFFERS ARE ALLOCATED
BEFORE THE FILE IS PROCESSED, FILES LATER IN THE COMMAND STRING
MUST NOT USE MORE BUFFER SPACE THAN THE FIRST INPUT FILE (OR BUFFERS WOULD OVERWRITE
THE VARIOUS SYMBOL TABLES <CREF IS BUILDING).  ^SHOULD THIS HAPPEN (FOR EXAMPLE
READING FIRST A FILE ON DISK - WITH 200 (OCTAL) WORD BUFFERS - THEN A FILE ON A
MAGTAPE WRITTEN WITH 2^K WORD BUFFERS) THEN THIS ERROR MESSAGE WILL
BE ISSUED AND THE CURRENT COMMAND WILL BE ABORTED.
.B 2;.LM 0
2.5##<SWITCH.INI ^SWITCH ^DEFAULTING
.B 1
<CREF 53(53) NOW SUPPORTS BASIC SWITCH DEFAULTING VIA THE FILE <DSK:SWITCH.INI[,].  ^THE
USER MAY PUT IN ANY SWITCHES OTHER THAN "</H" OR "</R" BUT SHOULD BE CAUTIONED
THAT TAPE-POSITIONING COMMANDS <"/A" AND <"/B" WILL NOT BE EFFECTED MORE
THAN ONCE PER FILE SPEC (I.E., THE SEQUENCE "</A" OR "</A/A/A/A" APPEARING IN <SWITCH.IN WOULD
HAVE AN IDENTICAL EFFECT - THE "/^A" FUNCTION WOULD BE APPLIED ONCE TO EACH FILE SPEC
THE USER TYPED.  ^THE USER MAY NOT SPECIFY FILE SPECIFICATIONS IN <SWITCH.INI.
.B 1
<SWITCH.INI IS READ WHEN <CREF IS STARTED AND A "MAP" OF THE SWITCHES SPECIFIED
IS MADE AND REMEMBERED, THEN APPLIED AS NEEDED FOR SUCCESSIVE USER COMMANDS (EITHER <CCL OR REGULAR TYPED-IN COMMANDS).
.B 1
^THE SWITCH "/^C" ^CANCELS <SWITCH.INI DEFAULTING; THE SWITCH "</D" RESTORES <SWITCH.INI DEFAULTING (NOTE THAT TO COMPLETELY CANCEL <SWITCH.INI
DEFAULTING THE "/^C" SWITCH SHOULD BE ISSUED ON THE OUTPUT FILE SPECS).
.B 3;.LM 0
3.0##^^KNOWN BUGS AND DEFICIENCIES\\
.B 1
^THERE ARE NO KNOWN BUGS IN <CREF 53(53) AS OF 6-^DEC-76.
.B 1
^THE COMMAND SCANNER IN <CREF STILL ISN'T VERY SMART, AND CAN BOMB YOU OUT RATHER INELEGANTLY.
.B 1
^THE "</R" SWITCH APPLIED TO MULTIPLE <FORTRAN INPUT LISTINGS MAY OR MAY NOT DO WHAT THE
USER INTENDED.  ^THE MEANING OF THE SWITCH IN THIS CASE IS SOMEWHAT AMBIGUOUS - DOES THE USER
WANT EACH SEPERATE SUBROUTINE TO BE RESTARTED AT THE SPECIFIED LINE
OR DOES THE USER WANT THE LINE-PRINTER OUTPUT TO BE RESTARTED AT THE PHYSICAL PRINTED LINE SPECIFIED?
.PG;.B 3
4.0##<INSTALLATION <INSTRUCTIONS
.B 
^THE SOURCE FILE FOR <CREF IS STANDALONE (IT DOES NOT NEED ANY EXTERNAL
PARAMETER FILES) SO SIMPLY COMPILE IT WITH <MACRO-10.
.B 1
<CREF NEEDS THE STANDARD <HELP PROCESSOR <HELPER.REL WHEN BEING LOADED.
.B 3;.LM 0
5.0##<INTERNAL <CHANGES
.B 1;.LM 25;.TS 7,25;.I -25
<EDIT	<SPR	<WHAT <AND <WHY
.B 1;.LM 17;.TS 7,17;.I -17
30	none	^General cosmetic edits to make the listing
prettier and easier to read.
.B 1;.I -17
31	none	^Move the data introduced into the low
segment into the high segment so as to allow <CREF to
be resident on the swapping space and much easier on the
monitor.  ^The data (introduced by the <TOPS20 compatibility
edits) will be <BLT<'d down at program start time.
.B1;.I -17
32	none	^Add code to recognize and handle <SFD<'s
in file path specifications.
.B1;.I -17
33	none	^Add code to allow user to type in file
specs to be used as indirect command file.
.B1;.I -17
34	none	^Convert all messages from <SIXBIT to <ASCII
and put them in mixed upper/lower case for neat appearance.
.B 1;.I -17
35	none	^Begin change over to using "=" rather than
the older "__" character to delimit input and output file
specifications.  ^The "__" character is reserved for network
usage (specifying nodes).
.B 1;.I -17
36	none	^Generally clean up the low level command
input code.  ^Treat the OLD altmode characters "~" and "}" as
regular <ASCII characters.
.B 1;.I -17
37	none	^Teach CREF about comments (";") and
continuation lines ("-").  ^Use <SCAN<'S conventions regarding
such constructs as "<BLAH - ;comment comment" (this case
would be considered a continuation line).
.B1;.I -17
40	none	^Teach <CREF about the </MESSAGE bits in
the job's watch word.  ^Output the various messages in the
appropriate format.
.B1;.I -17
41	none	^Make non-break control characters before
_<<LF> be syntax error (formerly would treat as pseudo-break
characters and internally delimit the command).
.B1;.I -17
42	none	^Make illegal switch processing more
elegant, put in "<?CRFUKS ^Unknown ^switch" message.
.PG;.B1;.I -17
43	none	^Do a <RESCAN on <CCL entry so can allow users
to type monitor command of form "<.CREF/P" to make the
<"/P" switch sticky on ALL <CCL processing.  ^ALSO allow
commands of form "<.CREF <TTY:=BLAH/S/O/P" etc.
.B1;.I -17
44	none	^Support <DSK:SWITCH.INI[,] for defaulting
switches.
.B1;.I -17
45	none	^Bug in "</R" processing, conflicts with
"</R" in <CCL file and "</R" in "<.CREF/R" commands, with
"<.CREF <A=B/R" commands.
.B1;.I -17
46	none	^Some code got moved around, if indirect
command file didn't exist could get into the <RUN processor
rather than the error message processor.
.B1;.I -17
47	none	^Look for <SWITCH.INI on logged in <PPN rather
than default path. ^This is the way <SCAN does it and we should
try to be compatible.
.B1;.I -17
50	none	^When reading multiple input files delete each
one as we go rather than just the last one. (^Be sure not to
delete any of them if the "</P" switch was given!)
.B 1;.I -17
51	none	^Make the command scanner even more picky
(unconditionally cause error message if
syntax error - don't try to find files based on the partial
specs built up before the error) yet more flexible
as to constructs of the
form "<.FOO <MUMBLE BLAH:" a la <SCAN. ^Make the monitor-level
command "<CREF/H" <EXIT after having typed the help text.
.B 1;.I -17
52	10-18277	^Must wait to setup input buffers until have
setup output buffers so as not to reset <.JBFF below the
output buffers (and thereby timeshare them with the symbol
chain being built in "free core"). ^Also, for multiple
.B 1;.I -17
53	NONE	^EDIT 50 WENT TOO FAR:  ONLY DELETE INPUT
FILE IF EXTENSION IS <.LST OR <.CRF.
input files make sure successive files do not use more
buffer space than the first file used - or the input buffers
will run into the already-extant (and allocated!)
"free core" area (issue
the <?CRFIBP error message in this case).
.PG;.B 3;.LM 0;.F;.J
6.0##<SUGGESTIONS
.B 1
^IT WOULD BE NICE IF <CREF WERE SMARTER IN HOW IT HANDLED COMMAND ERRORS - SAY
"^DUPLICATE DEVICE ILLEGAL" INSTEAD OF THE GENERAL CATCH-ALL "^SYNTAX ERROR".  ^ESPECIALLY, <CREF SHOULD NOT GO TRAPSING AROUND
LOOKING FOR THINGS TO DO IF THE USER ONLY TYPED _<<CR>_<LF>, IT SHOULD
JUST GIVE OUT ANOTHER "*" AND LET IT GO AT THAT.
.B 1
^PUT IN <SCAN AND <WILD FOR TRUE COMPATIBILITY WITH OTHER <DEC SOFTWARE
(LIKE <DIRECT), ALSO GIVE ABILITY TO USE WILDCARDS (E.G., "<.CREF <*/SINCE:YESTERDAY/O" ETC.).
.B 3
[^END OF <CRF53.DOC]
.B1
[<CRF51.DOC IS APPENDED AS AN INTEGRAL PART OF <CRF53.DOC]
.T <CRF51.DOC
.PG
<CREF.DOC -- ^CHANGES FROM ^V47 TO ^V51(20)
.BR
^SEPTEMBER 1974
.B3
1.0##^^SUMMARY\\
.B1
^THE REASONS FOR THIS RELEASE ARE:
.B1.LM9.TS9.I-4
^A)##^TO PROVIDE SUPPORT FOR ^^FORTRAN-10\\ VERSION 2.
.B1.I-4
^B)##^TO CORRECT OUTSTANDING BUGS IN ^^CREF\\ VERSION 47.
.B1.I-4
^C)##^DEFINE ERROR MNEMONIC PER ^^DEC\\SYSTEM-10 ERROR MESSAGE STANDARD.
.B1.LM0.TS5
^^CREF\\ VERSION 51 IS ^^CREF\\ VERSION 47 WITH EDITS 17 AND  20. ^THIS VERSION
FULLY REPLACES ALL EARLIER VERSIONS OF ^^CREF\\ AND IS UPWARD
COMPATIBLE.
.B3
2.0##<EXTERNAL <CHANGES
.B1
^ALL MESSAGES TYPED BY ^^CREF\\ ARE PRECEDED BY APPROPRIATE ERROR
MNEMONICS PER THE ^^DEC\\SYSTEM-10 ERROR MESSAGE STANDARD.
.B1
^THE COMMAND SCANNER WILL EXIT ON AN ^^EOF\\ FROM THE INPUT STREAM.
.B3
3.0##^^KNOWN BUGS AND DEFICIENCIES\\
.B1
<CREF ^V51 HAS NO KNOWN BUGS OR DEFICIENCIES.
.B3
4.0##<INSTALLATION <INSTRUCTIONS
.B1
^NONE.
.B3
5.0##<INTERNAL <CHANGES
.B1
^^CREF\\ NOW INCLUDES ROUTINES TO READ LINE NUMBERS FROM THE
INPUT FILE FOR USE IN GENERATING CROSS REFERENCE INFORMATION.
.B1
^UNSUPPORTED FEATURE TEST SWITCHES HAVE BEEN ADDED FOR ^^FAIL\\
FORMAT ^^CREF\\ FILES AND FOR THE ^^TENEX\\ FILE SYSTEM.
.B1
^A NEW <SORT ROUTINE HAS BEEN ADDED TO SPEED UP SORTING THE
^^CREF\\ LISTING.
.B1
^^CREF\\ NOW SUPPORTS A TERMINATING CHARACTER TO ALLOW THE USER
TO TERMINATE ^^CREF\\ INFORMATION WITHOUT INSERTING EITHER LINE NUMBERS
OR TABS INTO THE OUTPUT LISTING (THUS MAKING IT POSSIBLE TO HAVE
MULTIPLE BLOCKS OF ^^CREF\\ INFORMATION OF A LINE).
.B1
^AN ADDITIONAL TERMINATING CHARACTER FOR PROGRAM BREAK HAS BEEN DEFINED.
.B1
^THE FOLLOWING ARE THE EDITS MADE:
.B1.LM9.I-9
<EDIT _#
.B1.I-9
17#<HPW - ^IMPLEMENT NEW FEATURES FOR ^^FORTRAN-10\\ VERSION 2.
^DEFINE ERROR MNEMONICS.
.B1.I-9
20#<ASM - ^ADD FEATURES FOR THE ^^TENEX\\ FILE SYSTEM.
.B3.LM0.TS5
[^END OF ^^CRF51.DOC\\]
.B1
[<CRF47.DOC IS APPENDED AS AN INTEGRAL PART OF <CRF51.DOC]
.T <CRF47.DOC
.PG
.LM0.RM70.F.J.FLAG CAP.SP1.TS5
<CREF.DOC -- ^V47(16)
.BR
^NOVEMBER 1972
.B3
1.0	<SUMMARY
.B1
<CREF<'S COMMAND LANGUAGE FEATURES HAVE BEEN CLEANED UP:
.B1
<CREF PUBLISHES ITS NAME <"CREF: " AND THE NAMES OF THE
INPUT FILES WHEN RUNNING IN <CCL MODE, AND <"NAME!" IS
ACCEPTED TO RUN ANOTHER PROGRAM.
.B1
<DSK: IS THE DEFAULT OUTPUT DEVICE WHEN AN EXPLICIT
OUTPUT FILE NAME IS PRESENT.
.B3
2.0	<EXTERNAL <CHANGES
.B1
<CREF PUBLISHES ITS NAME ON THE USER TERMINAL WHEN
RUNNING IN ^COMMAND ^LANGUAGE MODE.
.B1
^WHEN AN EXPLICIT OUTPUT FILENAME IS PRESENT, <DSK: IS THE
DEFAULT OUTPUT DEVICE. ^IF NO EXPLICIT OUTPUT FILE NAME
IS PRESENT, <LPT: REMAINS THE DEFAULT OUTPUT DEVICE.
.B1
^A LOOKUP FAILURE ON AN INPUT FILE (SUCH AS IF THE FILE
DOES NOT EXIST) NO LONGER CAUSES <CREF TO ABORT OPERATION.
<CREF WILL CONTINUE SCANNING INPUT FILES AND CREATING THE
CROSS REFERENCE LISTING(S), MINUS THE MISSING INPUT FILE.
^THE ^^"?CANNOT FIND FILE\\ ... " MESSAGE WILL BE TYPED FOR
EACH OCCURANCE OF A MISSING FILE. (IF THE MISSING FILE
IS THE FIRST INPUT FILE NOT IN <CCL MODE, THAT IS, TYPED
IN BY HAND, <CREF WILL STILL ABORT, ALLOWING THE USER TO
RETYPE THE COMMAND.) ^THIS CHANGE ALLOWS <CCL FILES TO RUN
TO COMPLETION EVEN IF ONE SMALL PART FAILS, AND ALLOWS
<CREF TO DELETE THE COMMAND FILE AT THE END, THUS
PRECLUDING THE SAME MISSING INPUT FILE FROM CAUSING
MESSAGES AND TERMINATED OPERATION ON ANY FOLLOWING <CREF
COMMANDS. ^IF ANY FILE IS MISSING, <CREF SETS THE /^P SWITCH
SO NO INPUT FILE WILL BE DELETED.
.B1
^THERE IS A <"HELP" TEXT. ^TYPING "/^H" WILL CAUSE THE
FILE <SYS:CREF.HLP TO BE TYPED ON THE USERS TERMINAL.
.B1.I5
<"NAME! WILL RUN THE PROGRAM <SYS:NAME".
.B1
^THE <"?COMMAND <ERROR" MESSAGE NOW READS
.B1.I5
^^"?COMMAND ERROR--TYPE /H FOR HELP"\\.
.B3
3.0	^^KNOWN BUGS AND DEFICIENCIES\\
.B1
^WHEN MORE THAN ONE INPUT FILE IS COMBINED INTO A SINGLE
CREF LISTING, <CREF DELETES ONLY THE LAST INPUT FILE
INSTEAD OF ALL THE INPUT FILES. ^PROPER OPERATION WOULD
STORE THE FILENAMES OF ALL THE INPUT FILES AND DELETE
THEM ONLY AFTER ALL THE INPUT FILES ARE READ AND THE
OUTPUT FILE IS CLOSED WITH NO ERRORS.
.B1
<CREF STILL WON'T ACCEPT A COMMAND FILE WITH @FILENAME.
.B3
4.0	<INSTALLATION <INSTRUCTIONS
.B1
^NONE.
.B3
5.0	<INTERNAL <CHANGES
.B1
^A <KI10 CORE ALLOCATION BUG IS FIXED.
^AT THE BEGINNING OF EACH INPUT FILE, THE SWITCH ALLOWING
ONLY THE NEW <CREF SPECIAL CODES IS CLEARED SO THAT
OLDER PROGRAMS AND <FORTAN LISTINGS MAY BE COMBINED
WITH THE NEWER LISTINGS PRODUCED BY <MACRO.
^AN OLD MONITOR BUG HAS BEEN FIXED. ^THIS BUG CAUSED
AN OUTPUT FILE TO BE DELETED IF AN INPUT FILE OF
THE SAME NAME WAS DELETED. <CREF<'S DEFENSIVE CODE
TO AVOID DELETING INPUT FILES IN THIS CASE HAS
BEEN REMOVED. ^SINCE THE MONITOR BUG HAS BEEN FIXED
FOR TWO YEARS, HOPEFULLY THIS WILL CAUSE NO PROBLEMS.
.B1
^A GENERAL CLEANUP OF THE CREF LISTING WAS DONE. ^THE
STANDARD <TECO MACRO TO FORMAT THE LISTING AND ALLIGN
THE COMMENTS WAS USED. <FILCOM<'S </B/C SWITCHES MAKE
COMPARING THE OLD AND NEW VERSIONS REASONABLE.
.B1
^ALL OF <CREF<'S INTERNAL <"RPG" SYMBOLS WERE EDITED TO
CHANGE THEM TO <"CCL" SYMBOLS TO MAKE THEM MORE MNEMONIC.
.B3
[^END OF <CREF47.DOC]