Google
 

Trailing-Edge - PDP-10 Archives - SRI_NIC_PERM_SRC_1_19910112 - 6-documentation/exec.tco
There are 37 other files named exec.tco in the archive. Click here to see a list.
                               TCO-number:  6.1001



Written-by:  OSMAN                            Creation-date:  25-Feb-81 14:10:31


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  If PCL program does DOCOMMAND "TAKE ...";
it never finishes.

Diagnosis:  CIOREL routine was examining current stream instead of previous
when deciding how to unwind.  This mistake got introduced while merging
CMU'S stuff with ours.

Solution:  Use previous stream instead of current.


                               [End of TCO 6.1001]
                               TCO-number:  6.1003



Written-by:  OSMAN                            Creation-date:   2-Mar-81 08:55:57


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  If you say "SET PROG FOO KEEP CONTINUE" or "SET PROG FOO KEEP START",
then you get prompted for "data line for program" when you type "FOO ?".
However, the data line you type only gets passed for the START case!

Diagnosis:  It should be passed for both

Solution:  Make ..CONT exit through WAITR instead of WAITF.


                               [End of TCO 6.1003]
                               TCO-number:  6.1007



Written-by:  OSMAN                            Creation-date:  18-Mar-81 16:33:46


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execse




Problem:  If you say

	SET ALERT +0

you get one for tomorrow.

Diagnosis:  Exec tries to default date to "tomorrow" if you give now date and
you give a time in the past.  However, it determines this from "current date"
which it reads with GTAD.  Unfortunately, it was doing the GTAD after parsing
the "+0"!

Solution:  Do the GTAD before parsing the alert value!


                               [End of TCO 6.1007]
                               TCO-number:  6.1009



Written-by:  PAETZOLD                         Creation-date:  22-Apr-81 11:09:37


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:  SYSTAT types extra spaces before foreign host name when on an
ARPANET NVT.

Diagnosis:  TTY position is allready past HDRPOS.

Solution:  Check for legit results from calculation after RFPOS


                               [End of TCO 6.1009]
                               TCO-number:  6.1011



Written-by:  FORTMILLER                       Creation-date:  14-May-81 13:09:39
Edited-by:   FORTMILLER                       Edit-date:      14-May-81 13:12:18


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECED




Problem:  If user defines EDITOR: EMACS and does Edit FOO and
then does Edit GOO he gets FOO.

Diagnosis:  Code there but inside XTND condition which is turned
off.

Solution:  Remove the NOXTND conditional and the code in it and
remove the XTND conditional there by permanently turning on the
code which was inside the XTND.


                               [End of TCO 6.1011]
                               TCO-number:  6.1012



Written-by:  OSMAN                            Creation-date:  15-May-81 15:24:44
Edited-by:   PRATT                            Edit-date:      29-Sep-84 15:16:13


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  If program has no name and short entry vector (l < 3), exec fails
to examine pdvs for version numbers.

Diagnosis:  bug

Solution:  squish it


                               [End of TCO 6.1012]
                               TCO-number:  6.1013



Written-by:  OSMAN                            Creation-date:  20-May-81 09:21:20
Edited-by:   PRATT                            Edit-date:      29-Sep-84 15:16:46


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  Sometimes, the DDT command fails and says

	?Invalid section number

for no good reason.

Diagnosis:  Before DDT3, exec was forgetting to set the section number when
storing the second word (what is it?) of the undefined symbol table pointer.

Solution:  Use DDTSEC in left half of A when calling MAPPF.


                               [End of TCO 6.1013]
                               TCO-number:  6.1016



Written-by:  OSMAN                            Creation-date:   3-Jun-81 09:47:26


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  If a module called FOO exists and a symbol FOO in another module,
then something like

	@EXAMINE FOO

can earn you an undeserved

	?Address is not between 0 and 37,,777777

Diagnosis:  Exec matched program name first in symbol table

Solution:  When searching symbol table, ignore program names


                               [End of TCO 6.1016]
                               TCO-number:  6.1017



Written-by:  OSMAN                            Creation-date:   3-Jun-81 16:09:37


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  COMPILE-class commands don't interface to BLISS compiler.  This is
a drag.

Diagnosis:  Bliss needs to be taught the facts of life.

Solution:  Until Bliss is, have the exec run XBLISS which force feeds BLISS the
command string.


                               [End of TCO 6.1017]
                               TCO-number:  6.1019



Written-by:  OSMAN                            Creation-date:   7-Jun-81 16:31:32


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  Missing /BLISS switch.  Also, Bliss seems to have a bug whereby
it won't take "/obj:a a.bli,/obj:b b.bli" (it seems to barf on the b.bli).

Diagnosis:  Add /BLISS switch to load-class commands (means same as /for, /cob
etc. modulo bliss).  Don't put /obj in string unless user specifies particular
rel file in command.  This will get around the bug.

Solution:  yes


                               [End of TCO 6.1019]
                               TCO-number:  6.1020



Written-by:  OSMAN                            Creation-date:   7-Jun-81 16:52:46


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  Doesn't understand .req files for bliss

Diagnosis:  .REQ means say /LIB to bliss so bliss will make .l36 file

Solution:  check for .req files


                               [End of TCO 6.1020]
                               TCO-number:  6.1022



Written-by:  OSMAN                            Creation-date:  11-Jun-81 10:02:05


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  If you use addresses of the form a,,b in examine and deposit, you
don't get an error if b isn't legal as an expression.

Diagnosis:  exec was merely assuming that you typed a,, without the b!

Solution:  check for null atom explicitly before calling eval


                               [End of TCO 6.1022]
                               TCO-number:  6.1023



Written-by:  OSMAN                            Creation-date:  18-Jun-81 15:53:29


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP	EXECSU




Problem:  ddt/use-section:n
fails to honor n if ddt already exists in fork.

Diagnosis:  exec was using existing ddt regardless of n.

Solution:  make exec load a new ddt into section n if n is given
explicitly.


                               [End of TCO 6.1023]
                               TCO-number:  6.1025



Written-by:  CHALL                            Creation-date:  21-Sep-81 09:20:16


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  THERE OUGHT TO BE A SWITCH THAT CAN OVERRIDE THE /CREF SWITCHES 
IN A .CMD FILE, SO NO CREF'S ARE GENERATED.

Diagnosis:  ACTUALLY, THE /NOLIST SWITCH CANCELS THE /CREF SWITCH. BUT THAT IS 
NOT INTUITIVELY OBVIOUS.

Solution:  INVENT A /NOCREF SWITCH, WHICH ACTS THE SAME AS THE /NOLIST SWITCH.

HOWEVER, THIS ISN'T ENOUGH TO SOLVE THE PROBLEM. IN THE COMMAND 
"COM /NOCREF @FOO" THE /CREF'S IN FOO.CMD OVERRIDE THE /NOCREF. AND IN THE 
COMMAND "COM @FOO /NOCREF" ONLY THE LAST /CREF IN FOO.CMD IS CANCELED. SO MORE
WORK IS NECESSARY. WATCH THIS SPOT.


                               [End of TCO 6.1025]
                               TCO-number:  6.1027



Written-by:  CHALL                            Creation-date:   8-Oct-81 09:51:38
Edited-by:   CHALL                            Edit-date:       8-Oct-81 09:56:39


Edit-checked:         Yes    Document:          Yes    TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  IT WOULD BE USEFUL TO HAVE A COMMAND TO QUERY WHETHER A DECNET
NODE EXISTS OR NOT, AND IF IT EXISTS, WHETHER IS IT REACHABLE OR NOT.

Solution:  CREATE THE "INFO AVAIL NODE MUMBLE" COMMAND, WHICH REPORTS
"NODE MUMBLE IS REACHABLE" IF MUMBLE IS ON THE NETWORK, "NODE MUMBLE
IS UNREACHABLE" IF MUMBLE EXISTS BUT IS NOT ON-LINE, AND "NODE MUMBLE
DOES NOT EXIST" IF MUMBLE IS NOT A RECOGNIZED NODE.


                               [End of TCO 6.1027]
                               TCO-number:  6.1049



Written-by:  CHALL                            Creation-date:  20-Dec-81 18:07:46


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE	EXECSU




Problem:  EXEC COMMANDS WHICH TAKE ONLY NODE NAMES SHOULD NOT REQUIRE 
THE USER TO TYPE "::". THIS APPLIES TO THE FOLLOWING COMMANDS AND 
SWITCHES:

	SET LOCATION
	SUBMIT FOO/PROCESSING-NODE:
	SUBMIT FOO/DESTINATION-NODE:
	MODIFY BATCH NN/PROCESSING-NODE:
	MODIFY BATCH NN/DESTINATION-NODE:

(ALSO PRINT, PUNCH, ETC. ALONG WITH SUBMIT).

Diagnosis:  NOW THAT THERE'S A BIT IN THE COMND FUNCTION DESCRIPTOR BLOCK
TO SAY THAT THE "::"S IN A NODE NAME CAN BE OPTIONAL, USE IT FOR THE ABOVE
COMMANDS.

Solution:  IN EXECSE, AT .LNODE:, SET CM%NSF FOR CALL TO COMND (THIS TAKES
CARE OF "SET LOCATION").

ALSO SET CM%NSF IN EXECSU, AT $FNODE: AND $RNODE (NOTE: $RNODE IS NOT CALLED
NOW).

FURTHER NOTE: THERE ARE OTHER COMMANDS WHICH DEAL WITH NODES, WHICH DON'T
CALL COMND TO PARSE A NODE NAME (RATHER, JUST AN ATOM). THEY SHOULD BE TAUGHT
TO ASK FOR NODE NAMES.


                               [End of TCO 6.1049]
                               TCO-number:  6.1050



Written-by:  CHALL                            Creation-date:  20-Dec-81 18:47:01


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECDE	EXECSU




Problem:  WASTEFUL CODE DOING GETAB'S IN THE EXEC

Diagnosis:  GETAB'S ARE DONE USING UUO'S, WHICH EXECUTE WHO KNOWS HOW MANY
INSTRUCTIONS IN THE MONITOR PLUS MANY INSTRUCTIONS IN THE EXEC TO SAVE AND
RESTORE THE ENTIRE WORLD. HOWEVER, THE GETAB ROUTINE ITSELF IS 3 INSTRUCTIONS
LONG AND DOESN'T USE ANY ACS EXCEPT THE ONE IT RETURNS THE VALUE IN. THERE'S
NO REASON WHY GETAB'S SHOULDN'T BE DONE WITH A SIMPLE SUBROUTINE CALL.

Solution:  CHANGE GTB%: IN EXECSU.MAC TO EXPECT THE TABLE IN AC A AND THE INDEX
IN AC D. IN EXECDE, DEFINE THE FOLLOWING MACRO:

	DEFINE GTB(TABLE),<
		CALL [MOVEI A,TABLE
		      CALLRET GTB%]
	>

THIS MACRO CHANGES THE EXISTING GTB UUO'S TO SINGLE-INSTRUCTION SUBROUTINE
CALLS, AND IS INVENTED TO MAKE THE CHANGE-OVER SIMPLE (RATHER THAN ROOTING
OUT ALL THE GTB'S IN ALL THE EXEC MODULES).

ALSO, REMOVE THE OPDEF GTB FROM EXECDE.


                               [End of TCO 6.1050]
                               TCO-number:  6.1052



Written-by:  MCINTEE                          Creation-date:  28-Dec-81 10:41:52
Edited-by:   CHALL                            Edit-date:      28-Mar-83 10:50:10


Edit-checked:         Yes    Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	ALL




Problem:  (NONE)

Solution:  UPDATE COPYRIGHT DATES AND DELETE EDITS PERTAINING TO VERSION
4 AND BEFORE.


                               [End of TCO 6.1052]
                               TCO-number:  6.1063



Written-by:  CHALL                            Creation-date:  23-Feb-82 17:04:10


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  The languages table in EXECCS has 18 entries, but the languages
type field is only 4 bits long. The last two entries in the table are,
therefore, ignored.

Diagnosis:  Since one of those ignored entries is FORTRAN, trying to compile 
a FORTRAN program results in just an Exec prompt.

Solution:  Extend the language type field to be 5 bits.


                               [End of TCO 6.1063]
                               TCO-number:  6.1067



Written-by:  CHALL                            Creation-date:  11-Mar-82 14:05:11
Edited-by:   CHALL                            Edit-date:      11-Mar-82 14:15:58


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  Yes


Program:  EXEC
  Routines-affected:   	EXEC2




Problem:  When attaching to a detached job which has WHEEL or operator
privileges, ^E is not echoed any more (but the ^E commands work).
However if the job is attached to a VT100 terminal which has an ANSWER
BACK messages, that message is sent directly after the ^E. After running
a program the problem disappears.

Diagnosis:  The CCOC words are not handled properly on DETACH/ATTACH.

Solution:  In EXEC2, at .DETAC+20: remove two instructions:
MOVEI Q1,ETTYMD and CALL LTTYMD. Insert those same two instructions
at ..DTCH+2:.

Note: this comes from a V4 SPR whose answer somehow didn't get into V5.


                               [End of TCO 6.1067]
                               TCO-number:  6.1068



Written-by:  CHALL                            Creation-date:  11-Mar-82 17:15:59


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  Yes


Program:  EXEC
  Routines-affected:   	EXEC3




Problem:  @DIR, @@ARCHIVE would only give the first archived file.

Diagnosis:  The GTJFN done by the DIRECT code would find the first
archived file. The GNJFN's done thereafter would skip invisible
files (which most archived files are), so no other archived files
would be found. 

The reason that @DIR, @@INVIS finds all invisible files is that before
the GNJFN there is a check - if invisible files are wanted, GNJFN
is told to find them.

Solution:  Tell GNJFN also to look for invisible files when DIRECTORY
wants archived files. So, in EXEC3, at DSKR7+1: change the 
TXNN Q2,INVFO to TXNN Q2,INVFO+ARFO. 


                               [End of TCO 6.1068]
                               TCO-number:  6.1086



Written-by:  CHALL                            Creation-date:   8-Apr-82 17:12:26


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  If the terminal type is VT125 or VK100, typing "I TER"
gives "TERMINAL TYPE 35" (or 36).

Diagnosis:  There's a table of terminal names in EXECIN which, in
addition to the tables in EXEC0 (not to mention STG), needs to
be taught about new terminals.

Solution:  In EXECIN, at TTYPTB, add names for the VT125 and VT100
(this means also adding a bunch of zeroes for the user-definable
terminals, types 19-34).

I also added a note in EXEC0, at .TERMI and .TTYPE, so the next poor
slob who adds a new terminal will find all the places.


                               [End of TCO 6.1086]
                               TCO-number:  6.1088



Written-by:  CHALL                            Creation-date:   9-Apr-82 08:29:38


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXECIN


Solution:  Add VT102 support to the Exec.


                               [End of TCO 6.1088]
                               TCO-number:  6.1090



Written-by:  CHALL                            Creation-date:  13-Apr-82 11:29:32


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC3




Problem:  @DIR
	 @@NO SEPARATE<CR>

requires a second <CR> before it takes effect.

Diagnosis:  The dispatch for "NO SEPARATE" is going to the wrong address.

Solution:  In EXEC3, change the target of "SEPARATE" in $$NO: to be
.NSEPA, not .SEPAR.


                               [End of TCO 6.1090]
                               TCO-number:  6.1092



Written-by:  CHALL                            Creation-date:  14-Apr-82 09:23:34


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  Yes


Program:  EXEC
  Routines-affected:   	EXEC0	EXECCA	EXECDE	EXECGL	EXECP	EXECPR
			EXECSU




Problem:  MIC can't be enabled without re-compiling a lot of the Exec.

Solution:  Remove the MICSW conditionals from harmless MIC code and
data areas. Move routines that call MIC to EXECCA. Move MICSW from
EXECPR to EXECCA. Now setting MICSW (in EXECF2, say) re-compiling
EXECCA, and loading using the same old Exec .REL files will produce
a MIC Exec.


                               [End of TCO 6.1092]
                               TCO-number:  6.1097



Written-by:  CHALL                            Creation-date:  20-Apr-82 07:50:47


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP	EXECSU




Problem:  Release 5 or 6 Exec won't run with Release 4 monitor.

Diagnosis:  Two routines need to be made more polite when they fail,
which is what they will do under Release 4.

Solution:  In EXECP, at label DOSTRT:, try doing a normal start-fork
JSYS before doing the extended start (the extended instruction will
always work, but only with a monitor which has it).

In EXECSU, if the %GTB: routine (which does GETAB's) fails, return
zero instead of an error.


                               [End of TCO 6.1097]
                               TCO-number:  6.1100



Written-by:  CHALL                            Creation-date:  24-Apr-82 12:09:45


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  CONTROL-E SEND IS UGLY AND INEFFICIENT

Diagnosis:  THE HEADER OF A SEND-TO-ALL MESSAGE IS SO LONG THAT THE
MESSAGE USUALLY GETS BROKEN ACROSS TWO LINES (UNLESS IT'S REAL SHORT).

Solution:  DO THE FOLLOWING: KEEP THE ENTIRE MESSAGE ON ONE LINE IF IT
WILL FIT. OTHERWISE, PUT THE HEADER ON THE FIRST LINE, THEN THE MESSAGE
STARTING ON A NEW LINE. BREAK UP THE MESSAGE, IF IT'S LONG, BY INSERTING
CRLF'S AFTER SPACES IF POSSIBLE.

IN DOING THE ABOVE I REPLACED A LOT OF SOUTS WITH AN ILDB-IDPB LOOP, THUS
SAVING A LOT OF PROCESSING.


                               [End of TCO 6.1100]
                               TCO-number:  6.1101



Written-by:  CHALL                            Creation-date:  24-Apr-82 12:13:15


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXEC1	EXECCA	EXECGL	EXECIN




Problem:  THERE ARE TOO MANY TERMINAL TABLES IN DIFFERENT PLACES IN THE EXEC.
SOMEONE ADDING A NEW TYPE OF TERMINAL MUST FERRET THEM ALL OUT WITHOUT
BENEFIT OF GUIDELINES OR INTUITION.

Diagnosis:  ALL THE TABLES THAT KNOW ABOUT TERMINALS NEED TO BE GATHERED
IN ONE PLACE, SO THE POOR SLOB WHO'S ADDING A NEW TERMINAL CAN GET THEM
ALL AT ONCE.

Solution:  MOVE THE TERMINAL TABLES FROM EXEC0, EXEC1, AND EXECIN TO
EXECCA. DEFINE A LOT OF NEW GLOBALS IN EXECGL.


                               [End of TCO 6.1101]
                               TCO-number:  6.1112



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 13:06:16


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU




Problem:  THE /ASSISTANCE SWITCH (GOES WITH QUEUE SUBMISSIONS) DOESN'T
COMPLAIN WHEN GIVEN A NONSENSICAL VALUE, BUT IT DEFAULTS TO "YES".

Diagnosis:  MISSING CHECK TO SEE WHAT VALUE IS GIVEN
Solution:  INSERT A "CMERRX<YES or NO required>".  SEE EDIT 725 TO EXECQU.


                               [End of TCO 6.1112]
                               TCO-number:  6.1113



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 13:07:53


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU




Problem:  MAKE CANCELLING A QUEUE REQUEST WITH A NON-POSITIVE REQUEST ID
ILLEGAL.
Diagnosis:  IT'S NOT ILLEGAL

Solution:  MAKE IT ILLEGAL.  SEE EDIT 725 TO EXECQU.


                               [End of TCO 6.1113]
                               TCO-number:  6.1114



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 13:23:44


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  WHEN ECHO SUBCOMMAND HAS BEEN GIVEN TO "TAKE",
SUBCOMMANDS AREN'T ECHOED.
Diagnosis:  MISSING CALL TO ECHCMD WHEN PROCESSING SUBCOMMANDS
Solution:  INSERT CALL. SEE EDIT 726 TO EXECSU.


                               [End of TCO 6.1114]
                               TCO-number:  6.1115



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 13:40:16


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC2




Problem:  CCOC words are not set up right after a detach.
Diagnosis:  There should be a CALL LTTYMOD right after DTACH is done.

Solution:  Put call in.  See edit 727 to exec2.

                               [End of TCO 6.1115]
                               TCO-number:  6.1116



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 14:22:35
Edited-by:   KROSENBLUH                       Edit-date:      29-Apr-82 14:24:00


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execse




Problem:  Error message for "SET TIME-LIMIT" command is confusing.
Also, run-times of less than 1 second are allowed, but they default to 0.

Diagnosis:  Check for 0 > run-time > 1 sec., and fix error message.

Solution:  Do it. See edit 643 to execse.


                               [End of TCO 6.1116]
                               TCO-number:  6.1117



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 15:29:34


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  HELP keyword is filled out even when user doesn't type escape.
This is a problem if help file YYYXXX exists, but user wants help for
YYY, which is another command.

Diagnosis:  See if keyword was explicitly completed, or if escape was used.

Solution:  As above.  See edit 729 to execin.


                               [End of TCO 6.1117]
                               TCO-number:  6.1118



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 15:31:18


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  Complaint about the response to "I SPOOL"; says
"SET SPOOLED-OUTPUT-ACTION" , should be "SET SPOOLED-OUTPUT".

Diagnosis:  Change type-out.

Solution:  Do it. See edit 730 to execin.


                               [End of TCO 6.1118]
                               TCO-number:  6.1119



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 16:15:19


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC3




Problem:  "NO FOO" subcommands to the DIR command don't wait
for confirmation.

Diagnosis:  They should wait.

Solution:  Make them wait.  See edit 591 to exec3.


                               [End of TCO 6.1119]
                               TCO-number:  6.1121



Written-by:  KROSENBLUH                       Creation-date:  29-Apr-82 16:42:27


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC3




Problem:  In output from a directory command, files should be
printed on the same line if their dates are the same in local
time, not in GMT.

Diagnosis:  Convert their times to local time before doing
compare.

Solution:  Do it. See edit 732 to exec3.


                               [End of TCO 6.1121]
                               TCO-number:  6.1128



Written-by:  GROUT                            Creation-date:   4-May-82 13:54:16


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  If a CTRL/C is typed during a stopped CTRL/T typeout (the system is
slow), the EXEC goes into an CTRL/C-trapped infinite loop.

Diagnosis:  The EXEC does a RWM at GETLPC, which returns bits corresponding to
waiting interrupt levels in both halves (LH for those waiting in user context,
RH for those waiting in monitor context).  But, the code never expects bits
to be set in the RH, and does a JFFO to determine the next waiting interrupt
level.  If an RH bit is the leftmost one, an off-by-18 level number is
calculated, and used as an index into the saved PC table.  This loses.

Solution:  Since we don't care what context the interrupts are in, do a TSO
B,B before the JFFO, to inclusive-or the two halves together.


                               [End of TCO 6.1128]
                               TCO-number:  6.1141



Written-by:  KROSENBLUH                       Creation-date:  18-May-82 15:06:49


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN	EXECSU	EXECPR




Problem:  In response to an "INFO PROGRAM" command, the EXEC types
the last error that a process encountered, preceeded by a "?".
This is a mistake, since a "?" in the first column is interpreted
by batch jobs (and maybe by users) as a sign that a process is
being aborted because of an error right now.

Diagnosis:  Have the error message preceeded by 3 spaces per 
fork level (in line with the was fork state is reported by 
"INFO PROG").

Solution:  Flag the appropriate ETYPE routine (%X) to
precede the "?" by spaces, if you're coming from "INFO PROG".


                               [End of TCO 6.1141]
                               TCO-number:  6.1158



Written-by:  TSANG                            Creation-date:   8-Jun-82 16:07:07


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 13870



Problem:  WHEN USING A "DEBUG" COMMAND ON A BLISS FILE, LINK WILL COMPLAIN
OF AN UNKNOWN SWITCH.

Diagnosis:  THE DEBUG COMMAND ON A BLISS FILE WILL CREATE A TMPCOR FILE WITH
BLISS SWITCH. THERE IS NO BLISS SWITCH IN LINK. SO WHEN LINK SCAN THE TMPCOR
FILE, IT FINDS AN UNKNOWN SWITCH BLISS AND GENERATE THE FOLLOWING MESSAGE 
"?SCNUSV UNKNOWN SWITCH VALUE BLISS".
Solution:  FORCE THE TMPCOR FILE TO LOAD A DDT SWITCH FOR A SOURCE FILE OF TYPE
BLI.


                               [End of TCO 6.1158]
                               TCO-number:  6.1165



Written-by:  CHALL                            Creation-date:  10-Jun-82 14:04:08


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  CANCEL ARCHIVE FOO ? says that subcommands are allowed,
but typing ",<CR>" earns a "subcommands are illegal" message

Diagnosis:  In fact, subcommands are illegal. The cancel code is calling
a general read-file-list routine, which takes a flag saying that 
there are no subcommands. That flag is not being set.

Solution:  In EXEC1, in routine CANARG:, add CF%NS to the list of flags
set in ac B before the call to SPECFN.


                               [End of TCO 6.1165]
                               TCO-number:  6.1178



Written-by:  CHALL                            Creation-date:  25-Jun-82 20:30:21


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  A PUSH command always runs SYSTEM:EXEC.EXE. It would be nice
to allow PUSH to run the Exec of the user's choice.

Diagnosis:  PUSH does a GTJFN on SYSTEM:EXEC.EXE. There is now (or will be
soon) a system logical name "DEFAULT-EXEC:" which is SYSTEM:EXEC.EXE by
default, and which the user can change to be anything he wants.

Solution:  In EXEC1, in routine .PUSH:, look first for DEFAULT-EXEC:. If
that fails, look for SYSTEM:EXEC.EXE. If DEFAULT-EXEC: is built into
system initialization for all monitors which run the release 6 Exec,
then the code which looks for SYSTEM:EXEC.EXE can be removed.


                               [End of TCO 6.1178]
                               TCO-number:  6.1186



Written-by:  WALLACE                          Creation-date:  13-Jul-82 00:06:33
Edited-by:   WALLACE                          Edit-date:      13-Jul-82 00:09:34


Edit-checked:         Yes    Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  The DDT command attemts to start DDT in a non-zero section even
though UDDT.EXE has not been mapped there.

Diagnosis:  Although the DDT command is smart enough to start the
fork in the same section as its entry vector, it does not know
to also map UDDT.EXE there.  Instead it maps it into section 0.

Solution:  Modify the DDT command such that if no special section is
given but a fork does exist then map and start DDT in the same section
that contains the entry vector.


                               [End of TCO 6.1186]
                               TCO-number:  6.1187



Written-by:  TSANG                            Creation-date:  13-Jul-82 15:10:36
Edited-by:   TSANG                            Edit-date:      13-Jul-82 15:13:11


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 16138



Problem:  When using a line-continuation character "-" on a COMPILE class command, it was not parsed correctly. It was treated as a regular character and the error message will be created.

Diagnosis:  Insert a subroutine to check the line-continuation character "-" in 
GCMC subroutine when the source was scanned and strip it if seen.
Solution:  The line-continuation character "-" was stripped off so the parse 
won't be confused any more.

                               [End of TCO 6.1187]
                               TCO-number:  6.1190



Written-by:  WALLACE                          Creation-date:  21-Jul-82 23:53:01
Edited-by:   WALLACE                          Edit-date:      21-Jul-82 23:56:39


Edit-checked:         Yes    Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  DELETE command occasionally says negative number of pages
freed.

Diagnosis:  The DELETE command gets the directory allocation before
deleting files in a directory and then later gets the directory
allocation after deleting files in the directory.  If the counts
are different, then the DELETE command states how many pages are
freed.  This number could be negative if the directory allocation
grows while DELETE is deleting files.

Solution:  Modify PDLFRE, the routine which gives pages freed for
the DELETE command, to output pages freed only if EXPUNGE is
explicitly requested and to say nothing if directory allocation
grows during execution of the command.  This is the quick solution
since a better way would be to get page counts for each file
and sum the total.


                               [End of TCO 6.1190]
                               TCO-number:  6.1197



Written-by:  CHALL                            Creation-date:  29-Jul-82 09:40:06
Edited-by:   CHALL                            Edit-date:      29-Jul-82 09:44:39


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU




Problem:  Modifying the destination node of a batch job (MOD BAT FOO /DES:)
frags the /TAG field and leaves the node unchanged.

Diagnosis:  The code at .MSNOD saves the node name in the wrong word.

Solution:  Change it to store the value one word higher up.


                               [End of TCO 6.1197]
                               TCO-number:  6.1200



Written-by:  TSANG                            Creation-date:  30-Jul-82 14:10:21
Edited-by:   TSANG                            Edit-date:       1-Sep-82 15:21:15


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC2


Related-SPR:  	 18036



Problem:  WHEN USING A TYPE COMMAND ON A COBOL-74 FILE, THE REISSUING PROMPT IS POSITIONED OVER WHAT WAS THE FIRST CHARACTER OF THE LAST RECORD IN THE FILE, IF
THE FILE IS ENDED WITH A CARRIAGE RETURN ONLY.
Diagnosis:  FORCE THE SYSTEM TO OUTPUT A CARRIAGE RETURN AND LINE FEED AT THE END OF A FILE BEFORE REISSUING OF THE PROMPT.
Solution:  ADD A FEW INSTRUCTIONS WHICH WILL OUTPUT A CARRIAGE RETURN AND LINE FEED, AT CPBEOF SUBROUTINE.

                               [End of TCO 6.1200]
                               TCO-number:  6.1209



Written-by:  LEACHE                           Creation-date:   4-Aug-82 16:29:11


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECPR	EXECGL	EXECIN	EXECPR	EXECSU




Problem:  MANY SMALL PROBLEMS WITH JSYS TRAPPING

Diagnosis:  JSYS TRAPPING POORLY IMPLEMENTED

Solution:  Make the following internal changes:

1.  For JSYS name/number lookup, use a table, one slot of
which appears as follows:

	[TBLUK flags
	  ASCIZ/jsys name/],,nm

where "n" is the JSYS number for the text pointed to by this slot and
"m" is the table index to the text for the JSYS having the same JSYS 
number as the index for this table slot.  This data structure allows
conversion from JSYS number to JSYS name and vice versa.

2.  Keep the JSYS names sorted so that TBLUK and COMND will work on
the table.  Execute the sort at once-only time so that the sort is
performed only once per EXEC.

3.  Teach the EXEC how to output JSYS numbers for undefined JSYS's.

4.  As a side effect, rewrite the ETYPE output handler (which is
running out of function codes) so that it is table driven on any
ASCII character from octal 40 to octal 177.  Note that a lower-
case function code no longer calls the same routine as its upper-
case equivalent.

Make the following external changes:

1.  Implement the following syntax for the SET TRAP JSYS command:

	SET TRAP JSYS x,a,a,a, ... a

where "x" is a switch, JSYS name, or JSYS number and "a" is a
JSYS name or JSYS number.

2.  Implement the following switches:

	/ALL		(existing) - Specifies all JSYS's
	/DEFINED	(new) - Specifies all defined JSYS's
	/UNDEFINED	(new) - Specifies all undefined JSYS's

3.  Make /DEFINED the default so that 

	SET TRAP JSYS <ret>

implements the usual case.

4.  Range check JSYS numbers for interval (1 - 777)

5.  Make display of trapped JSYS's segregate defined
JSYS's (which are output in alphabetic order) from undefined JSYS's
(which are output in numeric order).


                               [End of TCO 6.1209]
                               TCO-number:  6.1210



Written-by:  CHALL                            Creation-date:   5-Aug-82 09:16:30


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  

Diagnosis:  The call to FSTAT in FSTR1 frags AC D, but the code assumes
it is preserved

Solution:  After the call to FSTAT, restore AC D from SAVHD.


                               [End of TCO 6.1210]
                               TCO-number:  6.1211



Written-by:  CHALL                            Creation-date:   5-Aug-82 09:20:02


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  The native FORTRAN compiler uses very high addresses. If a 
non-native compiler is run first, PA1050 will not overwrite itself
with FORTRAN.

Diagnosis:  This is really a PA1050 problem, but the fix below will serve
as a short-term solution.

Solution:  Move FORTRAN from next-to-last to next-to-first in the 
LANGUAGES MACRO in EXECCS. This will ensure that the FORTRAN compiler
is called first when many compilers are going to be wanted. It's O.K.
to load PA1050 over FORTRAN, so this will work.


                               [End of TCO 6.1211]
                               TCO-number:  6.1212



Written-by:  LEACHE                           Creation-date:   5-Aug-82 14:21:13
Edited-by:   LEACHE                           Edit-date:       6-Aug-82 09:56:58


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECPR




Problem:  PCL symbol PCFORK is undefined

Diagnosis:  We neglected to update our EXECPR from CMU's EXECPR.

Solution:  Add PCFORK to EXECPR.


                               [End of TCO 6.1212]
                               TCO-number:  6.1213



Written-by:  LEACHE                           Creation-date:   5-Aug-82 15:01:06
Edited-by:   LEACHE                           Edit-date:       5-Aug-82 15:03:13


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	eXECMI




Problem:  A previous edit removed conditional assembly switches from
universal file EXECDE and placed them in module EXECCA.  The MIC module
(EXECMI) can no longer search for its own conditional assembly symbol.

Diagnosis:  As above

Solution:  For the time being, remove conditionals in EXECMI and always
assemble it.


                               [End of TCO 6.1213]
                               TCO-number:  6.1214



Written-by:  TSANG                            Creation-date:   5-Aug-82 16:54:17
Edited-by:   TSANG                            Edit-date:       5-Aug-82 16:57:47


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC2


Related-SPR:  	 16677



Problem:  WHEN USING THE COPY COMMAND ON A SUBDIRECTORY, WHICH APPEAR AS FILES
OF TYPE .DIRECTORY, THE SYSTEM WILL GENERATE A ERROR MESSAGE, BUT THE COPY 
COMMAND WILL CONTINUE ON UNTIL ALL THE FILES SPECIFIED (E.G., BY WILDCARD)
HAVE BEEN COPIED. THIS WILL CAUSE SOME MISUNSTANDING BY THE USER IN BATCH
JOB.
Diagnosis:  WHEN COPYING A SUBDIRECTORY FILE, THE EXEC WILL ATTEMPT TO OPEN THAT
FILE. SINCE IT IS A RESTRICTION, SO MONITOR IS RETURNING AN ERROR CODE OPNX13,
AND THIS ERROR CODE IS PASSED TO A STANDARD ERROR HANDLE ROUTINE TO PRINT THE 
ERROR MESSAGE.
Solution:  MAKE THE EXEC CHECK THE ERROR CODE AFTER AN OPENF JSYS COMND IS ISSUED. IF THE ERROR CODE OPNX13 IS DETECTED, WE USE A SPECIAL ROUTINE TO PRINT OUT A 
WARNING MESSAGE INSTEAD OF A ERROR MESSAGE.

                               [End of TCO 6.1214]
                               TCO-number:  6.1215



Written-by:  LEACHE                           Creation-date:   5-Aug-82 20:20:00
Edited-by:   LEACHE                           Edit-date:       5-Aug-82 20:21:55


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE




Problem:  SET NO TRAP JSYS /DEFINED anD SET NO TRAP JSYS /UNDEFINED not
resetting trap bit-map.

Diagnosis:  Gratuitious JUMPN instruction was skipping over the reset code

Solution:  Remove instruction.


                               [End of TCO 6.1215]
                               TCO-number:  6.1225



Written-by:  LEACHE                           Creation-date:  11-Aug-82 15:04:12


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  INFORMATION PSI is displaying the ETYPE function code instead
of the appropriate data.

Diagnosis:  The particular ETYPE invocation is erroneously using lowercase
function codes.

Solution:  Uppercase the function codes.


                               [End of TCO 6.1225]
                               TCO-number:  6.1234



Written-by:  TSANG                            Creation-date:  20-Aug-82 16:51:09


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 18026



Problem:  THE DEFAULT LANGUAGE SWITCH OVERRIDES THE GLOBAL LANGUAGE SWITCH.

Diagnosis:  REVERSE THE ORDER. LET THE GLOBAL LANGUAGE SWITCH OVERRIDE THE DEFAULT ONE.
Solution:  CHANGE ROUTINE SWLTYP TO CHECK THE GLOBAL LANGUAGE SWITCH IS EXISTING OR NOT. IF THE GLOBAL LANGUAGE SWITCH IS EXISTING, DON'T LET THE DEFAULT ONE TO
OVERRIDE IT.

                               [End of TCO 6.1234]
                               TCO-number:  6.1240



Written-by:  PAETZOLD                         Creation-date:  28-Aug-82 11:52:17


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  

LOGIN does not print the time and date of last login even though it is 
available.

Diagnosis:  

None.

Solution:  

Add code to EXEC1 to print out the time and date of last login when logging in.



                               [End of TCO 6.1240]
                               TCO-number:  6.1242



Written-by:  LEACHE                           Creation-date:  31-Aug-82 10:05:57


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA




Problem:  
The EXEC does not correctly clear a VK100 screen on a BLANK command.

Diagnosis:  
The EXEC is using a VT100 escape sequence for the VK100.

Solution:  
Use the appropriate escape sequence.


                               [End of TCO 6.1242]
                               TCO-number:  6.1248



Written-by:  TSANG                            Creation-date:   3-Sep-82 13:42:33


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0


Related-SPR:  	 17433



Problem:  THE TEXT STRING OF HELP OPTION IN TERMINAL COMMAND IS OUT OF DATE.
Diagnosis:  CHANGE THE TEXT STRING IN SUBROUTINE TTYTXT
Solution:  1) FIX THE SPELLING OF CATEGORIES.
          2) CHANGE THE DESCRIPTION OF FLAG AND PAGE.
          3) ADD THE NEW DESCRIPTION FOR RAISE, PAUSE END-OF-PAGE, NO, 
             FULLDUPLEX AND HALFDUPLEX.

                               [End of TCO 6.1248]
                               TCO-number:  6.1249



Written-by:  TSANG                            Creation-date:   3-Sep-82 13:50:15


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 17975



Problem:  THE SET LATE-CLEAR-TYPEAHEAD COMMAND HAS NO EFFECT.
Diagnosis:  THE LOGIC SKIP INSTRUCTION DOES NOT SET CORRECTLY.
Solution:  REVERSE THE LOGIC SKIP INSTRUCTION IN SUBROUTINE ER2+1.

                               [End of TCO 6.1249]
                               TCO-number:  6.1250



Written-by:  TSANG                            Creation-date:   3-Sep-82 14:21:24


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU	EXEC1


Related-SPR:  	 17978



Problem:  NON-ALPHANUMERIC CHARACTER CAN CAUSE THE SECURITY PROBLEM, WHEN TYPED AHEAD OF THE PASSWORD. THE WHOLE PASSWORD WILL BE ECHOED.
Diagnosis:  A MACRO NAMED WORDX ARE USED TO PARSE THE PASSWORD. THE WORDX ITSELF USES THE COMND JSYS TO DO THE PARSING WORK. IN WORD$+4, A FUNCTION CODE .CMFLD WAS USED. THIS FUNCTION CODE .CMFLD TREATS THE FIRST NON-ALPHANUMERIC CHARACTER AS A DELIMIT INSTEAD OF A PART OF THE PASSWORD ITSELF. THIS MAKES THE .CMPTR (BYTES POINTER TO THE NEXT INPUT FIELD TO BE PARSED) MOVE TO THE POSITION RIGHT AFTER THE NON-ALPHANUMERIC CHARACTER AND POINTS TO THE BEGINNING OF THE REAL PASSWORD. THE COMND JSYS WILL KEEP PARSING THE REST OF THE INPUT (E.G. THE REAL PASSWORD) AND CONCERN IT AS AN ACCOUNTING FIELD. THE ACCOUNTING FIELD SUPPOSE TO BE ECHOED.
Solution:  REPLACE THE FUNCTION CODE .CMFLD BY .CMTXT IN WORD$+4 WHEN THIS SUBROUTINE IS USED TO PARSE A PASSWORD.

                               [End of TCO 6.1250]
                               TCO-number:  6.1252



Written-by:  TSANG                            Creation-date:   3-Sep-82 15:32:12


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 18001



Problem:  WHEN USE THE DIRECTORY CLASS COMMAND, A STRANGE MESSAGE "?STRING SPACE EXHAUSTED" OR "?EXEC FREE SPACE EXHAUSTED" COULD COME OUT SOMETIMES.
Diagnosis:  WHEN A DIRECTORY CLASS COMMAND FAILS TO FIND A FILE, THE SYSTEM WILL BUFFER THE FILE NAME IN THE MEMORY. AFTER A MESSAGE HAS BEEN ISSUED, THE SYSTEM STILL DOES NOT RELEASE THE TEXT FROM THE BUFFER. AFTER A WHILE THE BUFFER SPACE IS FILLED UP, THE ERROR MESSAGE WILL BE CREATED.
Solution:  BEFORE A ERROR BRANCH AFTER GETTING THE MEMORY SPACE, ALWAYS RELEASE THE MEMORY SPACE. THIS COULD BE DONE BY INSERTING A SUBROUTINE RETMEM IN SUBROUTINE GETMEM.

                               [End of TCO 6.1252]
                               TCO-number:  6.1253



Written-by:  TSANG                            Creation-date:   3-Sep-82 16:36:17


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0


Related-SPR:  	 18109



Problem:  THE INFORMATION MONITOR-STATISTICS COMMAND DOESN'T SHOW THE SHARED (.SASHR) CLASS, IF THE SHARED CLASS IS ZERO.
Diagnosis:  IF THE USED (.SAUSE) CLASS IS NOT ZERO, WE ALWAYS SHOW THE SHARED (.SASHR) CLASS NO MATTER IT IS ZERO OR NOT.

Solution:  AFTER FINDING THE SHARED (.SASHR) CLASS IS ZERO, WE ALSO CHECK THE USED (.SAUSE) CLASS IN SUBROUTINE CLLUP+7.

                               [End of TCO 6.1253]
                               TCO-number:  6.1254



Written-by:  TSANG                            Creation-date:   3-Sep-82 16:52:52


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECDE


Related-SPR:  	 18129



Problem:  THE BUILD AND ^ECREATE COMMAND ONLY ALLOWED 19 USER GROUPS IN EACH DIRECTORY OR SUBDIRECTORY. IT IS NOT ENOUGH.
Diagnosis:  CHANGE THE SIZE OF USER GROUP BUFFER FROM 19 TO 40.
Solution:  GET THE BUFFER SIZE OF 40.

                               [End of TCO 6.1254]
                               TCO-number:  6.1269



Written-by:  TSANG                            Creation-date:  15-Sep-82 13:24:44


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 17931



Problem:  WHEN USE THE LOAD COMMAND ON A PASCAL FILE, A ERROR MESSAGE "?SCNESM
EQUAL SIGN MISSING" IS DISPLAYED.
Diagnosis:  THE FORMAT OF THE TMPCOR FILE (PR BLOCK) CREATED BY THE LOAD COMMAND
ON A PASCAL FILE IS NOT CORRECT. WHEN THE LINK SCANS THIS UNCORRECT TMPCOR FILE,
IT WILL CREATE A ERROR MESSAGE "?SCNESM EQUAL SIGN MISSING".
Solution:  CREATE A CORRECT TMPCOR FILE FORMAT IN SUBROUTINE PUTLNK. THE UNCORRECT FORMAT LOOKS LIKE: "SYS:LINK.EXE!" AND THE CORRECT ONE SHOULD LOOK LIKE:
"/RUN:SYS:LINK.EXE".

                               [End of TCO 6.1269]
                               TCO-number:  6.1270



Written-by:  MCINTEE                          Creation-date:  17-Sep-82 13:26:14
Edited-by:   MCINTEE                          Edit-date:      28-Mar-83 10:55:36


Edit-checked:         Yes    Document:          Yes    TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC4	EXECSU	EXECDE


Related-TCO:  	6.1230	6.1030



Problem:  The EXEC will neither insert remote alias information into directories,
         nor return such infomation.
Diagnosis:  No code to do so.
Solution:  (SURPRISE !) Write code.

                               [End of TCO 6.1270]
                               TCO-number:  6.1286



Written-by:  CHALL                            Creation-date:  28-Sep-82 21:38:56


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1	EXECC2	EXECGL




Problem:  Need a way, while disabled, to send a message from one
terminal to another.

Solution:  Create the SEND command. If enabled it's the same as ^ESEND.
Otherwise it allows sending to a single terminal.


                               [End of TCO 6.1286]
                               TCO-number:  6.1287



Written-by:  CHALL                            Creation-date:  28-Sep-82 21:43:35


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  INFO MEMORY can take an enormous amount of time on a loaded
system when looking at an extended-section program.

Diagnosis:  I MEM does a JSYS for each page of each section that is in
use. That's 512 of 'em per section. Put code in two or more sections
and that can take time.

Solution:  Use an XRMAP to return a bit map of usage flags in an entire
section. Voila: one JSYS per section.


                               [End of TCO 6.1287]
                               TCO-number:  6.1288



Written-by:  CHALL                            Creation-date:  28-Sep-82 21:49:06


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  Login on a HDX terminal. Reserved TCO.


                               [End of TCO 6.1288]
                               TCO-number:  6.1290



Written-by:  DONAHUE                          Creation-date:  30-Sep-82 08:53:25


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  The LOG-FILE subcommand to the TAKE command doesn't wait
for confirmation if you use recognition on the filename.

Diagnosis:  No CONFIRM in the code for this subcommand.

Solution:  Add CONFIRM.


                               [End of TCO 6.1290]
                               TCO-number:  6.1302



Written-by:  TSANG                            Creation-date:   7-Oct-82 14:58:47


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC2


Related-SPR:  	 18098



Problem:  USE COPY COMMAND ON AN IBM STANDARD LABELLED EBCDIC TAPE TO COPY A FILE TO DISK, THE RESULTANT FILE IS ILLEGIBLE. BUT IF YOU SPECIFY THE SUBCOMMAND BYTE 7 TO THE COPY COMMAND, THE COMMAND WORKS. THIS PROBLEM ONLY APPEARS ON RELEASE 5 AND 6.
Diagnosis:  THE AC1 DOESN'T GET THE CORRECT JFN, SO AFTER THE LABEL CHECK SUBROUTINE, IT SKIPS OVER THE DEFAULT STEPS.
Solution:  MAKE AC1 TO GET THE CORRECT JFN.

                               [End of TCO 6.1302]
                               TCO-number:  6.1305



Written-by:  CHALL                            Creation-date:   8-Oct-82 18:07:53


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECED	EXECCA	EXECGL




Problem:  It would be useful to have a command to edit a file read-only.

Solution:  Add the PERUSE command. It's like EDIT, except the command
"PERUSE FILESPEC..." is passed to the editor program instead of "EDIT
FILESPEC..." (and the editor is expected to set the file to be read-only).
Also, no output filespec is asked for in the PERUSE command.


                               [End of TCO 6.1305]
                               TCO-number:  6.1306



Written-by:  CHALL                            Creation-date:  12-Oct-82 09:52:20


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA	EXECED	EXECGL




Problem:  Running an editor Read-only is a popular thing to do. There
should be a command which makes it easy.

Solution:  Invent the PERUSE command, which is like EDIT, except that
the editor should set its Read-only flag. The string "PERUSE FILESPEC etc"
is passed to the editor, so the editor program must decide what to do with
it.

(See the next two TCO's for implementation in the editors).


                               [End of TCO 6.1306]
                               TCO-number:  6.1311



Written-by:  WEETON                           Creation-date:  13-Oct-82 17:28:54


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	VERPNT




Problem:  The INFO VERSION command returns all fields of the version in
octal, this makes it difficult to get track of edit numbers, since the
edit numbers are defined as decimal, but EXEC write them in octal.

Diagnosis:  Once upon a time, everything was in octal.  But now things are
different.

Solution:  Make versions come out in decimal.


                               [End of TCO 6.1311]
                               TCO-number:  6.1313



Written-by:  WEETON                           Creation-date:  14-Oct-82 09:17:10
Edited-by:   WEETON                           Edit-date:      14-Oct-82 09:17:46


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC3




Problem:  Customer want a directory subcommand to print the entire file name.

Diagnosis:  No such subcommand.

Solution:  Install new subcommand "COMPLETE (FILE NAMES)".


                               [End of TCO 6.1313]
                               TCO-number:  6.1319



Written-by:  TSANG                            Creation-date:  15-Oct-82 16:10:37


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 17962



Problem:  IF THE .REL FILE IS AN OFFLINE FILE, THE COMPILE CLASS COMMANDS DIDN'T  IGNORE IT. THAT MAKES THINGS ACT STRANGELY.
Diagnosis:  THE COMPILE CLASS COMMANDS SEE THE .REL FILE (AND DON'T CHECK WHETHER IT IS OFFLINE) SO DON'T COMPILE.
Solution:  MAKE THE COMPILE CLASS COMMANDS CONSIDER OFFLINE .REL FILE AS AN OLD   .REL FILE, AND IGNORE IT. THEN IT WILL RECOMPILE THE SOURCE FILE.

                               [End of TCO 6.1319]
                               TCO-number:  6.1323



Written-by:  CHALL                            Creation-date:  21-Oct-82 00:15:16


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECED	EXECPR	EXECGL




Problem:  Recent changes to the EDIT family of commands has broken
the fact that "EDIT FOO$BAR.MAC.3 (OUTPUT AS) $" should fill in
"FOOBAR.MAC.4".

Diagnosis:  The clown who made the changes didn't know the difference 
between .CMOFI and .CMFIL, and used the former, which doesn't allow
for a default filespec.

Solution:  At EDIT3+n use a COMND FDB that uses .CMFIL. Define that FDB
in EXECPR.


                               [End of TCO 6.1323]
                               TCO-number:  6.1335



Written-by:  WEETON                           Creation-date:  27-Oct-82 17:08:42


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE




Problem:  SET DIRECTORY PASSWORD command always asks for the old password.

Diagnosis:  No code it check if password is really needed.

Solution:  Add code.


                               [End of TCO 6.1335]
                               TCO-number:  6.1338



Written-by:  WEETON                           Creation-date:   1-Nov-82 08:47:50


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  Between 00:00:01 and 1:00:00 of the last day of Daylight Savings Time,
jobs scheduled with the /AFTER:TODAY are scheduled to run today, not tomorrow
as they should be.

Diagnosis:  EXEC doesn't take into consideration DST and can pass the wrong
argument to ODTIM.

Solution:  If the target date is DST, add an extra hour to the time before doing
the ODTIM.


                               [End of TCO 6.1338]
                               TCO-number:  6.1347



Written-by:  LOMARTIRE                        Creation-date:   5-Nov-82 13:30:53
Edited-by:   LOMARTIRE                        Edit-date:      29-Mar-83 16:09:42


Edit-checked:         Yes    Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECED


Related-SPR:  	 18296



Problem:  The EXEC prints out a strange error message when EDITOR: is defined
as another logical name and that logical name is not defined.  The same message
will be printed if EDITOR: is defined as a file which does not exist.
Diagnosis:  When EXEC tries to do a GTJFN on the editor defined by EDITOR:, 
it fails and dispatches to an error handling routine.  However the keyword 
entered for the EDIT or CREATE command is in the atom buffer.  The error 
handler sees this and assumes that it should be printed along with the 
message it will generate.  So what results is a message like: ?Can't find 
editor - No such device - "create".
Solution:  Before the error handler is called from EXECED, place the logical 
name definition of EDITOR: in the atom buffer.  This will cause the definition 
to be printed in the error message instead of the keyword.

                               [End of TCO 6.1347]
                               TCO-number:  6.1349



Written-by:  WEETON                           Creation-date:   5-Nov-82 16:11:22


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  /NOSYMBOL switch to LOAD class commands doesn't work.

Diagnosis:  At P2SYMS: incorrect checking of flags makes EXEC pass either
nothing or /LOCAL to LINK; no matter what to user does.

Solution:  Change defination of bit F%LSYM from "include symbols" to
"don't include sysbols" and re-write code at P2SYMS to make the correct
desicisions


                               [End of TCO 6.1349]
                               TCO-number:  6.1366



Written-by:  CHALL                            Creation-date:  11-Nov-82 21:21:57
Edited-by:   CHALL                            Edit-date:      13-Nov-82 13:04:07


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  If the TALK command cannot reach the talkee, it suggests that
the user run MAIL.

Diagnosis:  MAIL is not the supported mail program, and sites may be
running one of a number of mailers: MS, MM, etc.

Solution:  In EXEC1, at .TALK, change all references to MAIL in the 
output messages to suggest that the user run mail (ie, whatever mail
program is available) ie the attempt to TALK fails.


                               [End of TCO 6.1366]
                               TCO-number:  6.1367



Written-by:  CHALL                            Creation-date:  11-Nov-82 21:24:11


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC4




Problem:  The use and meaning of User and Directory Groups is obscure
and confusing.

Solution:  Help a little bit by changing the USER-GROUP subcommand of
BUILD and ^ECREATE to be USER-OF-GROUP.


                               [End of TCO 6.1367]
                               TCO-number:  6.1368



Written-by:  CHALL                            Creation-date:  11-Nov-82 21:32:58
Edited-by:   CHALL                            Edit-date:      11-Nov-82 21:37:42


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  In INFO DECNET NODES, the NODES is superfluous. Also, it would
be useful to type INFO DECNET FOO:: to find out if FOO:: is up or not.

Diagnosis:  Yeah, the NODES is superfluous. And there's a command to find
out about a specific node: INFO AVAILABLE NODE FOO::, but it's hard to
find, hard to remember, and hard to type.

Solution:  Change INFO DECNET to work as follows:

I DECNET<CR> - give the list of all DECnet nodes.

I DECNET FOO:: - talk about node FOO::.

The colons are optional in FOO:: (note: in I AVAIL NODE, the colons were
illegal! That's fixed, too).


                               [End of TCO 6.1368]
                               TCO-number:  6.1369



Written-by:  CHALL                            Creation-date:  11-Nov-82 21:36:59


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECPR




Problem:  There's no copyright in EXEC.EXE. People can disassemble the
object code and get a source that doesn't say they can't steal it.
Digital needs to take more responsibility for not tempting useful
citizens down the path of crime.

Solution:  Add the monitor's new copyright macro to EXECPR, where it 
assembles as ASCIZ text at the start of EXEC.EXE.


                               [End of TCO 6.1369]
                               TCO-number:  6.1382



Written-by:  MOSER                            Creation-date:  17-Nov-82 11:40:59
Edited-by:   TSANG                            Edit-date:       8-Dec-82 13:36:53


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	DIRECT




Problem:  The local SW /NOCOMPILE doesn't override the global SW /COMPILE in
COMPILE class command. For example, if you typed
	@LOAD /COMPILE FOO.MAC /NOCOMPILE
The system will force to compile.
Diagnosis:  When the system parses the input stream, the /COMPILE SW was seen
first, so the system does not look for the object file nor get the date and
time for that object file. On the second pass, the system can not find the 
date and time for the object file, so it just assumes there is no object file
and force to compile.
Solution:  Don't let the /COMPILE SW to effect the parse, just let it take
effect on second pass.

                               [End of TCO 6.1382]
                               TCO-number:  6.1384



Written-by:  PAETZOLD                         Creation-date:  18-Nov-82 10:44:20


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execse




Problem:  

EXEC still has the ^ESET ARPANET commands.  THey will not work in release 6.

Diagnosis:  


Solution:  

Remove them.  They are replaced by the IPHOST program.



                               [End of TCO 6.1384]
                               TCO-number:  6.1388



Written-by:  TSANG                            Creation-date:  22-Nov-82 15:08:15
Edited-by:   TSANG                            Edit-date:       4-Feb-83 09:56:59


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 18356



Problem:  WHEN USE THE /NOWARNINGS SWITCH FOR COMPILE CLASS COMMAND ON A FORTRAN
FILE, IT DOESN'T WORK.
Diagnosis:  THE /NOWARNINGS SWITCH IS NOT PLACED IN THE TMPCOR FILE (PR BLOCK), 
SO THIS SWITCH IS NEVER PASSED TO FORTRAN COMPILER. IF THERE IS NEITHER WARNINGS NOR NOWARNINGS SWITCH, THE FORTRAN COMPILER DEFAULT TO WARNINGS.
Solution:  IF THE /NOWARNING SWITCH SEEN, WRITE IT TO TMPCOR FILE (PR BLOCK) IN
SUBROUTINE BILDNC.

                               [End of TCO 6.1388]
                               TCO-number:  6.1389



Written-by:  TSANG                            Creation-date:  22-Nov-82 16:13:12
Edited-by:   TSANG                            Edit-date:      17-Jan-83 16:17:29


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 18286



Problem:  WHEN YOU TYPE    @LOAD FOO.MAC/MACRO %"/EXEC"
THE FILE EXTENSION AND LANGUAGE SWITCH ARE IGNORED AND FORTRAN PROCESSOR IS
USED TO COMPILE THE PROGRAM.
Diagnosis:  THE LANGUAGE TYPE WAS BEEN SET IN A WRONG DESCRIPTION BLOCK, THAT 
BLOCK IS USED TO STORE LINK SWITCH. IN THE LATE PROCESS, THE SYSTEM WON'T BE
ABLE TO FIND THE LANGUAGE TYPE IN THE CORRECT DESCRIPTION BLOCK, IT JUST DEFAULT TO FORTRAN.
Solution:  THE FORMAT OF THE NEW STRING BUILT FROM CMPRES SUBROUTINE IS NOT 
CORRECT. THE SPACE PRECEEDING PERCENT SIGN SHOULD BE REPLACED BY A COMMA,
INSTEAD OF A SPACE. THIS WILL MAKE THE PARSE SUBROUTINE TO PARSE THE STRING
CORRECTLY AND SET THE LANGUAGE TYPE IN A PROPER DESCRIPTION BLOCK.

                               [End of TCO 6.1389]
                               TCO-number:  6.1397



Written-by:  CHALL                            Creation-date:  29-Nov-82 23:04:21


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXECCA




Problem:  The noise for the TERMINAL command, "(MODE IS)" is no longer
correct, since you can do more things than set the terminal mode (whatever
a mode is). Also, since the keywords to TERMINAL can be divided into two
sets, types and features, it would be nice to split them into two 
keyword tables, so it's clear to the user which is which.

Solution:  Change the noise to TERMINAL (FEATURE OR TYPE) and separate
the keywords into two tables, features and types.


                               [End of TCO 6.1397]
                               TCO-number:  6.1398



Written-by:  CHALL                            Creation-date:  29-Nov-82 23:05:59


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA




Problem:  The TERMINAL command should more properly be SET TERMINAL,
since it's setting things about the terminal.

Solution:  Add the SET TERMINAL command, which is identical to TERMINAL.
TERMINAL remains; it will be up to future developers to decide whether
it should be retired.


                               [End of TCO 6.1398]
                               TCO-number:  6.1399



Written-by:  CHALL                            Creation-date:  29-Nov-82 23:12:18


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXECCA	EXECGL




Problem:  Typing "?" when you're not logged in gives you a long list
of commands, and only trial and error will tell you which are legal
and which are not (that means a lot of ?Login please messages).

Also, LOGIN remains a legal command after you are logged in, although
it doesn't do anything useful except require the second "O" to be typed
in LOGOUT.

Solution:  Create a separate Exec top-level command table to be used when
the user is not logged in. It contains only the commands which can are
legal then (there are still a lot of commands which will win "?Login
please" messages - like a number of INFO MUMBLE commands - but not, at
least, they are two or more words long).

Also, remove the useless LOGIN command from the logged-in table.

This change has the useful side-effect that it's clearer now which 
commands are legal when not logged in. And logged-out-only commands can
be invented, if that should ever prove useful.


                               [End of TCO 6.1399]
                               TCO-number:  6.1400



Written-by:  TSANG                            Creation-date:   1-Dec-82 13:56:06


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 18337



Problem:  IT IS IMPOSSIBLE TO USE A LOAD CLASS COMMAND, IF THE COMPILER REQUIRED A SWITCH SPECIFICATION LIKE:    /S:"ABCD"
ONE WOULD EXPECT THE COMMAND TO LOOK LIKE:
@LOAD sourcefile /LANGUAGE-SWITCHES:"/S:""ABCD"""
BUT YOU WILL GET THE ERROR MESSAGE:  ?SWITCH NAME AMBIGUOUS
Diagnosis:  THE EXEC DOES NOT PARSE THE QUOTED STRING CORRECTLY. THE EXEC 
TERMINATES THE PARSE OF A QUOTED STRING WHEN THE SECOND QUOTATION MARK IS FOUND.
Solution:  MAKE THE EXEC TO PARSE THE QUOTED STRING CORRECTLY. IF TWO CONSECUTIVE QUOTATION MARKS ARE FOUND, PUT ONE IN THE SWITCH STRING FOR THE COMPILER AND 
CONTINUE THE PARSE.

                               [End of TCO 6.1400]
                               TCO-number:  6.1406



Written-by:  CHALL                            Creation-date:   7-Dec-82 15:13:02


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  It would be useful for a batch file to recognize the
fact that a DECnet node is unavailable as an error.

Solution:  In EXECIN, at AVNOD:, change the message to
"%Node FOO is unavailable" (ie, add the "%").


                               [End of TCO 6.1406]
                               TCO-number:  6.1412



Written-by:  ACARLSON                         Creation-date:  10-Dec-82 13:38:01


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU




Problem:  Add /Letter-quality switch to PRINT command to supplement
/Lowercase and /Uppercase switches. Also add /Left-margin: to
allow user to define the left margin for output.

Diagnosis:  New switches

Solution:  Add them


                               [End of TCO 6.1412]
                               TCO-number:  6.1418



Written-by:  TSANG                            Creation-date:  15-Dec-82 09:25:51


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 18359



Problem:  THE ABBREVIATION FOR FILE-STATUS, "F", OF THE INFORMATION COMMAND IS
CODED INSIDE THE XTND CONDITIONAL. IT IS WRONG. IT WILL MAKES THE SYSTEM UNABLE TO USE THE ABBREVIATION "F" FOR FILE-STATUS.
Diagnosis:  THE ABBREVIATION FOR FILE-STATUS, "F", IS CODED INSIDE THE XTND
CONDITIONAL, BUT THE FORK-STATUS IS CODED INSIDE THE MFRK CONDITIONAL, WHICH WILL
MAKE THEM CONFLICT WITH EACH OTHER.
Solution:  MOVE THE CODE OF ABBREVIATION FOR FILE-STATUS, "F", TO THE SAME 
CONDITIONAL WITH FORK-STATUS, WHICH IS INSIDE THE MFRK CONDITIONAL.

                               [End of TCO 6.1418]
                               TCO-number:  6.1424



Written-by:  TSANG                            Creation-date:  17-Dec-82 09:41:38


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 18623



Problem:  /NOBINARY switch on compile class command doesn't suppress the 
generation of .REL file.
Diagnosis:  The /NOBINARY switch is not written to the TMPCOR file (PR block).
The compiler doesn't know this switch at all.
Solution:  Write the /NOBINARY switch to TMPCOR file.

                               [End of TCO 6.1424]
                               TCO-number:  6.1437



Written-by:  DONAHUE                          Creation-date:   4-Jan-83 14:04:41


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  The LOG-FILE subcommand to TAKE does not wait for confirmation.

Diagnosis:  Someone was in a hurry.

Solution:  Add a CONFIRM in the TKLOG routine.


                               [End of TCO 6.1437]
                               TCO-number:  6.1449



Written-by:  LOMARTIRE                        Creation-date:  10-Jan-83 13:03:31
Edited-by:   LOMARTIRE                        Edit-date:      29-Mar-83 16:13:30


Edit-checked:         Yes    Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1	EXEC2	EXECGL




Problem:  CTRL/E-SPEAK writes the SYSJOB.COMMANDS file to SYSTEM:, so if a user 
has a local logical definition of SYSTEM: different from the system-wide one, 
SYSJOB will never find the command file.  This edit was originally written 
for version 4 by K. Rosenbluh and is being incorporated into version 6 
sources.
Diagnosis:  When the EXEC does a GTJFN on SYSTEM:SYSJOB.COMMANDS, it should 
set bit GJ%PHY.
Solution:  Do it that way.

                               [End of TCO 6.1449]
                               TCO-number:  6.1450



Written-by:  WEETON                           Creation-date:  11-Jan-83 11:34:52


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  When Daylight Saving Time is turned on or off, jobs can be
scheduled to run at the wrong time.

Diagnosis:  EXEC doesn't take into consideration this possiblity.

Solution:  In EXECSU, make the routines DT1 smarter by do checks for
DST change over.  If we are doing a change over, then add or subtract
an hour depend on which way we are changing.


                               [End of TCO 6.1450]
                               TCO-number:  6.1451



Written-by:  CHALL                            Creation-date:  11-Jan-83 15:03:06


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  If you run a program which gets a restricted JFN (where GTSTS
returns GS%FRK) and type INFO MEM, the INFO will die with an error 
message.

Diagnosis:  The only fork that can learn anything about that JFN is the
fork that got it. The Exec does a JFNS which fails, tries to analyze the
error with a GTSTS. The GTSTS succeeds. But before the Exec looks to see
if GS%FRK is on (which it considers an "acceptable" error), it checks to
see if there is a file associated with the JFN, which there is, but 
evidently the monitor doesn't think the Exec is privileged to know that.
So the GTSTS has bit 10 (whatever it's called) off. The Exec bombs.

Solution:  Check GS%FRK before looking at the file-associated bit. Then all
JFN's which are reported as restricted will give nice output, and, in
particulat, INFO MEM will work again. Remember INFO MEM?


                               [End of TCO 6.1451]
                               TCO-number:  6.1456



Written-by:  CHALL.WIZARD                     Creation-date:  12-Jan-83 14:40:18


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  If you type DDT when your core image includes pages in DDT's
range (740-777 or so), the Exec goes ahead and loads DDT over the
existing pages. Maybe it would be better to inform the user that that
will happen and give him the means to force the overlay if he wants.

Diagnosis:  GET% has a flag that will prevent existing pages from being
overwritten, but the Exec doesn't use it.

Solution:  Make the default for DDT, MERGE, GET, R, and RU be not to
overlay existing pages (this is only interesting for DDT and MERGE,
of course). Add to all these commands the switch /OVERLAY, which will
force existing pages to be overlaid. Note: the default behavior of
these commands has changed.


                               [End of TCO 6.1456]
                               TCO-number:  6.1457



Written-by:  CHALL.WIZARD                     Creation-date:  12-Jan-83 15:15:36


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU




Problem:  Typing "@PLOT TTY:" gets the message "%Can't get file size 
for %s - Invalid displacement".

Diagnosis:  Ignoring the fact that anyone who types "@PLOT TTY:" 
deserves to get fragged, the "%s" in the error message is flaky - 
it should be the filespec.

Solution:  "%s" is a directive to fill the filespec in the output 
message. A while ago all such directives were changed to upper
case (to allow later expansion into different lower case directives).
So the solution is to change it to "%S". Now the poor imbecile will
get the right error message.


                               [End of TCO 6.1457]
                               TCO-number:  6.1459



Written-by:  TSANG                            Creation-date:  13-Jan-83 09:31:46
Edited-by:   TSANG                            Edit-date:      13-Jan-83 16:29:30


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECPR	EXECGL	EXECSU


Related-SPR:  	 17409



Problem:  IN THE EXEC, IF A CORRECT SUBCOMMAND IS GIVEN AFTER A PREVIOUS SUBCOMMAND FAILED (WITH NO INTERVENING RETURN TO TOP LEVEL), THE WHOLE COMMAND SOMETIMES FAILS WITH ANY ONE OF A NUMBER OF ERRORS. ** THIS EDIT WAS ORIGINALLY MADE FOR V4 BY K. ROSENBLUH AND IS NOW BEING INCORPORATED INTO THE V6 SOURCE.

Diagnosis:  AC15, WHICH CONTAINS A COPY OF AC17 BEFORE THE BAD SUBCOMMAND, IS 
NOT RESTORED BY THE SUBCOMMAND ERROR RECOVERY ROUTINE.
Solution:  SAVE AC15 IN LOCATION .PP BEFORE GETTING A SUBCOMMAND, AND RESTORE IT 
IN THE ERROR RECOVERY ROUTINE.

                               [End of TCO 6.1459]
                               TCO-number:  6.1460



Written-by:  TSANG                            Creation-date:  13-Jan-83 09:37:47
Edited-by:   TSANG                            Edit-date:      13-Jan-83 16:32:55


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 17672



Problem:  CTRL/T CAN SHOW THE WRONG PROBLEM NAME, IF, FOR EXAMPLE, A PROGRAM IS STARTED WITH A RUN UUO RATHER THAN DIRECTLY BY THE EXEC.  ** THIS EDIT WAS ORIGINALLY MADE FOR V4 BY K. ROSENBLUH AND IS NOW BEING INCORPORATED INTO THE V6 SOURCE.
Diagnosis:  THE EXEC LOOKS FOR THE NAME IN IT'S OWN FORK TABLE, THE TABLE IS NOT 
NECESSARILY UP-TO-DATE.
Solution:  DO A GETNM JSYS INSTEAD OF A TABLE LOOKUP.

                               [End of TCO 6.1460]
                               TCO-number:  6.1461



Written-by:  TSANG                            Creation-date:  13-Jan-83 09:47:26
Edited-by:   TSANG                            Edit-date:      13-Jan-83 16:37:53


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 17794



Problem:  
CTRL/T SOMETIMES SHOWS CURRENT PROGRAM NAME AS "EXEC". THIS SHOULDN'T HAPPEN. WHEN NO PROGRAM IS RUNNING IN A FORK, EITHER THE NAME OF THE LAST RUN PROGRAM SHOULD BE SHOWN, OR NO PROGRAM NAME AT ALL (IF, FOR EXAMPLE, A RESET HAS BEEN DONE). **THIS EDIT WAS ORIGINALLY MADE FOR V4 BY K. ROSENBLUH AND IS NOW BEING INCORPORATED INTO THE V6 SOURCE.
Diagnosis:  A GETNM IS DONE TO GET THE PROGRAM NAME, AND THIS OF COURSE RETURNS
"EXEC" WHEN NOTHING ELSE IS RUNNING.
Solution:  SEE IF GETNM RETURNS PROGRAM-NAME "EXEC", IF SO, LOOK FOR THE NAME OF THE LAST RUN PROGRAM IN THE EXEC'S FORK INFO TABLE.

                               [End of TCO 6.1461]
                               TCO-number:  6.1464



Written-by:  CHALL                            Creation-date:  15-Jan-83 18:53:25


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	ALL




Problem:  None

Solution:  Update copyright notices in the source and .EXE to 1983.


                               [End of TCO 6.1464]
                               TCO-number:  6.1465



Written-by:  CHALL                            Creation-date:  15-Jan-83 19:14:36


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA	EXECP




Problem:  The NAME command should more properly be SET NAME.

Solution:  Make it so. Leave the old NAME command around invisible
for compatibility. Change the noise to (OF CURRENT FORK) to make it
sound better with SET NAME.


                               [End of TCO 6.1465]
                               TCO-number:  6.1478



Written-by:  PAETZOLD                         Creation-date:  26-Jan-83 18:43:00
Edited-by:   PAETZOLD                         Edit-date:      26-Jan-83 18:47:33


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  

Mark Crispin.  Killer mail files from SU-SCORE prevent jobs from logging in
on ARPANET systems.

Diagnosis:  

For some obscure reason mail messages were being sent using "%" instead of
"@" as the source address.  The ARPANET mailer set the last writer string 
of MAIL.TXT to the string.  When loging in the EXEC attempt to report the
fact that new mail has been received from "FUBAR%SU-SCORE".  The string is
output using the "%\" feature of UETYPE.  "%\" recurses into UETYPE again
and attempts to interpret the "%S".  An error results.  The job does not get
logged in.


Solution:  

Change the string at MALLCL (plus a few) to use "%M" instead of "%\".
"%\" ends up calling UETYPE again and the "%" in the string is interpreted.
"%M" uses SOUT.


                               [End of TCO 6.1478]
                               TCO-number:  6.1490



Written-by:  TSANG                            Creation-date:   2-Feb-83 11:55:38
Edited-by:   TSANG                            Edit-date:       3-Feb-83 14:19:12


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP


Related-SPR:  	 18557



Problem:  EXEC ACCEPTS MORE THAN ONE /USE-SECTION: SWITCH ON THE GET,RUN, R AND
DDT COMMANDS. YOU CAN KEEP ON TYPING /USE-SECTION: SWITCH UNTIL THE INTERNAL
BUFFER IS FILLED.
Diagnosis:  THE SYSTEM JUMPS TO SUBROUTINE GET3 TO PARSE THE /USE-SECTION: SWITCH. AFTER FINISHING PARSING THE /USE-SECTION: SWITCH, THE SYSTEM JUMPS BACK TO 
GET3 AGAIN. THAT WILL CAUSE MULTIPLE /USE-SECTION: SWITCHES ALLOWED.
Solution:  DON'T ALLOW TO PARSE THE /USE-SECTION: SWITCH AGAIN, IF ALREADY DONE.

                               [End of TCO 6.1490]
                               TCO-number:  6.1494



Written-by:  TSANG                            Creation-date:   3-Feb-83 14:28:38


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE


Related-SPR:  	 18556



Problem:  EXEC ACCEPTS MORE THAN ONE "NO" KEYWORD ON THE "SET TRAP NO" AND "SET
NO TRAP" COMMANDS. YOU CAN KEEP ON TYPING "NO" KEYWORD UNTIL THE INTERNAL BUFFER
IS FILLED.
Diagnosis:  THE SYSTEM JUMPS TO SUBROUTINE TRAPN TO PARSE ALL THE KEYWORDS. AFTER FINISHING PARSING THE "NO" KEYWORD, THE SYSTEM JUMPS BACK TO TRAPN AGAIN. THAT WILL CAUSE THE MULTIPLE "NO" KEYWORD ALLOWED.
Solution:  DON'T ALLOW TO PARSE THE "DO" KEYWORD AGAIN, IF ALREADY DONE.

                               [End of TCO 6.1494]
                               TCO-number:  6.1499



Written-by:  LOMARTIRE                        Creation-date:  10-Feb-83 16:17:13
Edited-by:   LOMARTIRE                        Edit-date:      29-Mar-83 16:13:56


Edit-checked:         Yes    Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 18734



Problem:  Both COPY FOO.*.* (TO) BAR.*.*;T and RENAME FOO.*.* (TO) BAR.*.*;T 
lose the ;T attribute on all files except the first.
Diagnosis:  Since wildcards are used, the EXEC builds the output filespec by 
using a sequence of JFNS calls.  Once the filespec has been formed, it is 
passed to routine GTJFS in order to obtain a real JFN.  But the filespec 
that is formed by the JFNS calls does not contain the ;T attribute since 
FB%TMP is not on the the FDB.  So, the file that results does not have the ;T 
attribute.  The first file happens to retain the ;T attribute because FB%TMP 
is on in its FDB due to the output filespec parse of the original COPY or 
RENAME command and is never cleared.
Solution:  Check bit GJ%TFS in the output filename JFN (MCOJFN) to see if the 
file is temporary.  If it is, append a ;T to the end of the filespec string.  
This replaces the JFNS call since it will never return the ;T attribute.  
Also, this must be done before the account field is appended onto the string 
since ;A;T (which would result from a null account field) is illegal.

                               [End of TCO 6.1499]
                               TCO-number:  6.1500



Written-by:  TSANG                            Creation-date:  10-Feb-83 17:07:43


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE


Related-SPR:  	 18816



Problem:  If ESCAPE is used to provide recognition on SET LATE-CLEAR-TYPEAHEAD or
SET NO LATE-CLEAR-TYPEAHEAD, it acts same as you confirm with RETURN.
Diagnosis:  The flag CIDLYF was updated before requesting confirmation in subroutine .CIDLY.
Solution:  Reverse the processing order. Call the CONF first then update the flag
CIDLYF.

                               [End of TCO 6.1500]
                               TCO-number:  6.1516



Written-by:  TSANG                            Creation-date:  18-Feb-83 16:33:22


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 18606



Problem:  The EXEC tries to output the "^O..." to a output disk file instead of
the terminal, if you type a CTRL-O when an OUTPUT subcommand is processing.
Diagnosis:  The EXEC uses the incorrect JFN to output the "^O..." text in COBPSI
subroutine. The COMPSI subroutine is used to handle the CTRL-O software interrupt.
Solution:  Provide a correct JFN.

                               [End of TCO 6.1516]
                               TCO-number:  6.1519



Written-by:  CHALL                            Creation-date:  21-Feb-83 22:09:21
Edited-by:   CHALL                            Edit-date:      28-Feb-83 07:50:03


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECGL	EXECCS	EXECPM	EXECSU


Related-TCO:  	6.1528



Problem:  Exec won't compile

Diagnosis:  The global symbol FIELD conflicts with the MACSYM macro
FIELD, and MACSYM wins.

Solution:  Change the Exec's FIELD to FIELDX.


                               [End of TCO 6.1519]
                               TCO-number:  6.1535



Written-by:  WEETON                           Creation-date:   3-Mar-83 16:43:59
Edited-by:   WEETON                           Edit-date:       3-Mar-83 16:46:49


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 14822



Problem:  Directory related commands (EXPUNGE,I DIR,I DIS, etc.) fail
when given a logical name that contains wild cards.

Diagnosis:  The EXEC does unnessesary checking for wild cards.

Solution:  Remove code at STPUS1: in the EXEC that checks if the string
contains wild cards, and rely on RCDIR's error handling. (see TCO 6.1534)


                               [End of TCO 6.1535]
                               TCO-number:  6.1563



Written-by:  TSANG                            Creation-date:  23-Mar-83 14:51:26


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  IF /CREF AND /NOLIST OR /LIST AND /NOCREF SWITCHES ARE USED TOGETHER IN A COMPILE COMMAND STRING, THE LATEST ONE OVERRIDES ALL PREVIOUS ONES. SO IF YOU SUBMIT A COMMAND STRING LIKE : @COMPILE FOO.FOR/CREF/NOLIST
THE /NOLIST WILL OVERRIDE /CREF AND CAUSES THERE TO BE NO CREF LISTING.
Diagnosis:  THE CORRECT INTERACTION BETWEEN /CREF AND /NOLIST IS ALWAYS LIKE THIS: /CREF WILL OVERRIDE /NOLIST, NO MATTER WHICH ONE IS APPEARING FIRST. SIMILARLY, /LIST WILL OVERRIDE /NOCREF.
Solution:  DO AS ABOVE


                               [End of TCO 6.1563]
                               TCO-number:  6.1564



Written-by:  TSANG                            Creation-date:  23-Mar-83 16:59:02
Edited-by:   TSANG                            Edit-date:      23-Mar-83 17:03:47


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  ANY TEXT FOLLOWING /LIST, /BINARY, /CREF ETC., (SWITCHES FOR COMPILE 
CLASS COMMAND) IS PARSED BUT IGNORED; I.E. /LIST:NAME AND /LIST ARE COMPLETELY
EQUIVALENT. IN FACT, ANY OF THE SWITCHES COULD BE FOLLOWED BY A COLON AND TEST,
EVEN THOSE WHICH ARE NOT SUPPOSED TO HAVE AN ARGUMENT. IF A COLON AND TEXT
FOLLOW THOSE SWITCHES, WHICH ARE NOT SUPPOSED TO HAVE A COLON AND TEXT, NO ERROR WAS GIVEN AND NO EXTRA ACTION WAS TAKEN.
Diagnosis:  THE EXEC USES COMND JSYS TO PARSE THE SWITCH. THE COMND JSYS ALWAYS 
ALLOWED A COLON APPENDED AT THE END OF THAT SWITCH. WHEN THE EXEC PARSES THE 
INPUT COMMAND STRING AND SEES THE COLON AT THE END OF A SWITCH, THE EXEC WILL
USE TEXTI JSYS TO READ AND SKIP THE REST OF THE COMMAND STRING FOLLOWING THE 
COLON UNTIL A SPECIAL CHARACTER IS SEEN. THESE SPECIAL CHARACTER ARE SET IN THE
BREAK MASK WORD (.RDBRK). THIS IS THE REASON WHY THE TEXT FOLLOWING THE COLON,
INSIDE A SWITCH, WAS IGNORED. THE EXEC WILL RESUME TO PARSE THE COMMAND STRING 
UNTIL THE NEXT SPECIAL CHARACTER, EITHER A SLASH, SPACE OR CR WAS SEEN. THE /LANGUAGE-SWITCHES: WOULD NOT HAVE THIS KIND PROBLEM, BECAUSE THERE IS ALWAYS A
DOUBLE QUOTE (") FOLLOWING THE COLON. THE DOUBLE QUOTE WILL SERVE AS A BREAK MASK.
Solution:  RESET THE BREAK MASK WORD (.RDBRK), LET ANY CHARACTER BE A BREAK MASK
IN TEXTI JSYS. SO ANY THING AFTER THE COLON, EXCEPT COLON IN /LANGUAGE-SWITCHES:, WILL BE TREATED AS A NEW FIELD.

                               [End of TCO 6.1564]
                               TCO-number:  6.1580



Written-by:  TSANG                            Creation-date:  31-Mar-83 10:40:28
Edited-by:   TSANG                            Edit-date:       7-Apr-83 14:27:48


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1


Related-SPR:  	 18980



Problem:  The system will fail with a message "?Internal illegal instruction", if Access Control Job refuses capability ENABLE.
Diagnosis:  EPCAP and RPCAP JSYS'S are used to handle ENABLE command. For some 
reason, those JSYS's calls could fail. And the failure of the JSYS call will
cause the system fail if there is no error handling routine following the JSYS
call.
Solution:  1. EXEC: Provide a "ERJMP CJERR" statement right after the EPCAP and
RPCAP JSYS call.
          2. MONITOR: Give a good return after calling monitor routine GETOK0.
Don't issue any error message.

                               [End of TCO 6.1580]
                               TCO-number:  6.1597



Written-by:  TSANG                            Creation-date:   7-Apr-83 13:57:35


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 19005



Problem:  If you submit a command string like:  @COMP FOO.BAR.1
You will get an error message like: 
?Switch, filename, "@", or "%" required - Invalid character in filename - "FOO.BAR.1"
This error message should give better information.
Diagnosis:  File generation number is not accepted during parsing.
Solution:  Create a meaningful error message like:
?No generation number or attributes allowed, or invalid character in filename -  FOO.BAR

                               [End of TCO 6.1597]
                               TCO-number:  6.1618



Written-by:  FLEMMING                         Creation-date:  20-Apr-83 06:18:23


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECDE	EXEC4




Problem:  New: Allow TOPS10 project and programmer numbers (FOR COMPATABILITY)
to be inserted during BUILD dialogue.


                               [End of TCO 6.1618]
                               TCO-number:  6.1643



Written-by:  CHALL                            Creation-date:   5-May-83 13:07:59


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC4




Problem:  Change the syntax of the TOPS10-PRO* subcommands to BUILD and
^ECREATE to make them more friendly. Change the messages output by
BUILD,, LIST and ^EPRINT. Add a way to clear the TOPS10-PPN in the
directory.

Solution:  Combine TOPS10-PROJECT-NUMBER and TOP10-PROGRAMMER-NUMBER
subcommands to be TOPS10-PROJECT-PROGRAMMER-NUMBER.

If the PPN is set, output it on one line as TOPS10-PROJECT-PROGRAMMER-NUMBER.

Add the NO TOPS10-... , which clears the PPN field.


                               [End of TCO 6.1643]
                               TCO-number:  6.1646



Written-by:  CHALL                            Creation-date:   5-May-83 13:16:34


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA	EXECP




Problem:  The multiforking subcommands to START and CONTINUE (STAY, QUIET,
BACKGROUND, SIGNAL, INPUT, and OUTPUT) don't work correctly. They all
give inconsistent results when the background fork attempts to do input
or output.

Diagnosis:  How to make background forks doing I/O function properly was
not well thought out.

Solution:  In the true Digital way, remove all those subcommands, until
the time and resources can be found to make them work correctly. The
user can still say CONTINUE<SPACE>STAY (or START...) to keep a fork in
the background. That fork's output will mix in with other output, and
if it requests input it will abort - as it does now.


                               [End of TCO 6.1646]
                               TCO-number:  6.1652



Written-by:  CHALL                            Creation-date:  11-May-83 10:08:06


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA	EXECP




Problem:  Looks like the "stay" subcommand to START and CONTINUE
is needed in a multiforking exec after all.

Diagnosis:  Otherwise there's no way to say START STAY or
CONTINUE <PROGRAM> STAY.

Solution:  Revive the STAY subcommand. It's the only subcommand now.


                               [End of TCO 6.1652]
                               TCO-number:  6.1653



Written-by:  TSANG                            Creation-date:  11-May-83 19:43:51


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 19037



Problem:  The /RELOCATABLE switch does not work properly in the compile class 
command. Following are two examples:
Example 1, If you submit a command string:
	@LOAD FOO.FOR/RELOCATABLE
The FOO.REL file will be passed to the LINK instead of the FOO.FOR file. (Note
the FOO.REL file exists)

Example 2, If you submit a command string:
	@LOAD FOO/RELOCATABLE
The first file with the same file name in the directory will be used.
Diagnosis:  Example 1, the correct file been passed to the LINK should be FOO.FOR
not the FOO.REL.
Example 2, the correct default file should be the FOO.REL file, not the first 
file in the directory.
Solution:  This is EDIT #958 to the EXEC. There is no DDT patch available because of requiring significant change in the DDT patch.

                               [End of TCO 6.1653]
                               TCO-number:  6.1654



Written-by:  TSANG                            Creation-date:  11-May-83 19:51:00


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0


Related-SPR:  	 19024



Problem:  "NO" argument in "TERMINAL NO PAUSE CHARACTER X" does not work.
Diagnosis:  JSYS MTOPR in subroutine ..PPCH is used to set the pause character
for the terminal. It is lacking of a test routine to check "NO PAUSE" or "PAUSE".
Solution:  Provide a test routine before using JSYS MTOPR. If "NO PAUSE" is used
restore ^S,,^Q in AC3.

                               [End of TCO 6.1654]
                               TCO-number:  6.1656



Written-by:  PAETZOLD                         Creation-date:  13-May-83 00:01:56


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  

Sometimes the SEND command will fail with an illegal write when the caller
is not prived.

Diagnosis:  

SNDPTC is not zeroed in the TRVAR and is used as a possible flag later on.
If the stack location happens to be nonzero the code will pick up a byte 
pointer from the bizarro universe.

Solution:  

Zero SNDPTC after the TRVAR in .USEND.


                               [End of TCO 6.1656]
                               TCO-number:  6.1676



Written-by:  LOMARTIRE                        Creation-date:   9-Jun-83 09:43:54


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXECSE


Related-SPR:  	 17895



Problem:  The ^ESET TERMINAL command does not allow a range of terminal lines 
to be entered.
Diagnosis:  The code allows only a single terminal number.
Solution:  Add code to allow an optional terminal number after the first one 
has been specified.  This second number will represent the highest terminal 
number in the range.  The line speeds will be applied to every TTY line in 
the range.  If this optional number is not entered, the command will function 
as before and only the first terminal number will be used.

                               [End of TCO 6.1676]
                               TCO-number:  6.1688



Written-by:  TSANG                            Creation-date:  16-Jun-83 14:42:56


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECMI


Related-SPR:  	 18847



Problem:  If the comment character (e.g. ! or ; ) is seen in the first column in a batch file, the DO command will not work properly on this batch file.
Diagnosis:  The bit F.COL1 is not set on when a comment character is seen.
Solution:  Set the bit F.COL1 on in subroutine COMNT of module EXECMI.

                               [End of TCO 6.1688]
                               TCO-number:  6.1698



Written-by:  WEETON                           Creation-date:  21-Jun-83 15:16:02


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  Disabled users unable to change directory parameters with BUILD command.

Diagnosis:  Subroutine WORD$ is clobbering Q1 which contains the bits indicating
which words CRDIR is supposed to modify.

Solution:  Use B instead of Q1.


                               [End of TCO 6.1698]
                               TCO-number:  6.1704



Written-by:  CHALL                            Creation-date:  23-Jun-83 09:14:35


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA




Problem:  THE BLANK COMMAND IS LEGAL WHEN NOT LOGGED IN, BUT IT
DOES NOTHING

Diagnosis:  WHEN NOT LOGGED IN, THE MONITOR AND EXEC THINK THE TERMINAL
IS "SYSTEM-DEFAULT", WHICH CAN'T BE ERASED.
Solution:  REMOVE BLANK FROM THE LIST OF LEGAL COMMANDS WHEN NOT 
LOGGED IN.


                               [End of TCO 6.1704]
                               TCO-number:  6.1715



Written-by:  WEETON                           Creation-date:   7-Jul-83 07:58:29
Edited-by:   WEETON                           Edit-date:       7-Jul-83 08:04:54


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN


Related-SPR:  	 16854



Problem:  Customer confusion.                 Edits sent to costumers are sent
as decimal edits.  The EXEC "INFO VER" command writes out the edit level in
octal.

Diagnosis:  EXEC writes version numbers in octal.

Solution:  Add a new symbol (VI%DEC) to the version word that tells the EXEC
that the edit number should be printed in decimal instead of octal.  This is
bit 18.  Edit levels can still reach 131071 (decimal).


                               [End of TCO 6.1715]
                               TCO-number:  6.1720



Written-by:  TSANG                            Creation-date:  11-Jul-83 13:20:06


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC3


Related-SPR:  	 19061



Problem:  "NO DATES" subcommand of "DIRECTORY" command display the specified 
information instead of suppressing the information.
Diagnosis:  The wrong subroutine .DATES was used in $$NO table.
Solution:  Use the correct subroutine .NDATE in $$NO table for "NO DATES" subcommand and use the explict subroutine .DATES in $DIRS table for "DATES" subcommand.
This is edit #970. No DDT patch is available due to the table expansion.

                               [End of TCO 6.1720]
                               TCO-number:  6.1730



Written-by:  JCAMPBELL                        Creation-date:  14-Jul-83 11:42:41
Edited-by:   JCAMPBELL                        Edit-date:      14-Jul-83 11:49:08


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU	EXEC2




Problem:  EXEC does not look at FDB to determine whether it should
be printed with FORTRAN carriage control. Also, files which have
that attribute in their FDB do not have it copied when the file is
copied.

Diagnosis:  EXECQU does not know about FB%FOR. EXEC2 doesn't either.

Solution:  Teach EXECQU to peek at the FDB to find out if FB%FOR is set.
Teach EXEC2 to use FB%FOR in its mask for CHFDB after file is copied.


                               [End of TCO 6.1730]
                               TCO-number:  6.1731



Written-by:  TSANG                            Creation-date:  15-Jul-83 09:30:45
Edited-by:   TSANG                            Edit-date:      14-Dec-83 13:00:50


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin	EXEC2	EXECGL	EXECPR


Related-SPR:  	 19053



Problem:  If you give the command "DEFINE HLP: <HEL*>" while there are more than 
one directory matching the name <HEL*> (for example <HELP> and <HEL2>) and there is a file with the same name in each directory, and afterward you give a HELP 
command. You will get a panic error message _ ?INTERNAL ILLEGAL INSTRUCTION AT
47164 - ENTRY IS ALREADY IN TABLE.
Diagnosis:  There is no error handling routine after the TBADD monitor call. And if there are more than one file matching the multiple defined directories, only
the first matched file will be displayed.
Solution:  Add an error handling routine after the TBADD monitor call, which 
simply gets the JFN of the next file. And set a check point at COPDON subroutine
. If it is for HELP command, don't go to the loop to display next file.

                               [End of TCO 6.1731]
                               TCO-number:  6.1760



Written-by:  TSANG                            Creation-date:   4-Aug-83 16:37:46


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU	EXEC1


Related-SPR:  	 19352



Problem:  RENAME command gives inconsistent error character in reporting an error
condition. For example:
		@RENAME FOO.*		;ESCAPE CHARACTER
		?File not found - "FOO.*"
		@RENAME FOO.*		;CARRIAGE RETURN
		%File not found - FOO.*

** Note: No file FOO.* exists.
Diagnosis:  GTJFN JSYS is used to parse the input file. If the input file does 
not exist, the system will jump to subroutine CFNE which is the error handling
routine. CFNE subroutine does not handle correctly.
Solution:  Make the subroutine CFNE work correctly.

                               [End of TCO 6.1760]
                               TCO-number:  6.1761



Written-by:  PAETZOLD                         Creation-date:   6-Aug-83 20:35:50


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	STG




Problem:  

NO SUPPORT FOR VT131s.

Diagnosis:  


Solution:  

ADD VT131 SUPPORT TO MONSYM AND THE EXEC.



                               [End of TCO 6.1761]
                               TCO-number:  6.1766



Written-by:  CHALL                            Creation-date:  10-Aug-83 15:49:43


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  None

Diagnosis:  It would be useful if INFO DECNET would type out the number
of nodes that are reachable in its header.

Solution:  Add to the header line "Nodes reachable: nn." before outputting
the nn-long list of node names.


                               [End of TCO 6.1766]
                               TCO-number:  6.1774



Written-by:  PRATT                            Creation-date:  15-Aug-83 16:12:58


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 17432



Problem:  

Compile-class commands allow wildcards in filespecs but don't
know how to handle them. As an example, @COMPILE *.MAC, will
compile the first .MAC file it finds and then exits back to
EXEC level rather than looking for more files. 


Diagnosis:  

The EXEC currently has no way to handle the wildcards. It doesn't
expect wildcards, but cannot restrict them because of the 
complex lookup mechanism it uses to determine what files to compile. 


Solution:  

Examine the JFN flags to see if a wildcard was typed in either the name
or extension. If so, fail with "No wildcards allowed in file specification".



                               [End of TCO 6.1774]
                               TCO-number:  6.1778



Written-by:  TSANG                            Creation-date:  17-Aug-83 13:25:28


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 19336



Problem:  Switches of LOAD class commands, beginning with "/NO", don't get passed to compilers. These switches include the following: /NOBINARY, /NOCHECK, 
/NOCREF, /NODEBUG, /NOFLAG-NON-STANDARD, /NOLIST, /NOMACHINE-CODE, /NOOPTIMIZE
and /NOWARNINGS.
Diagnosis:  The EXEC gives compilers a certain set of defaults. But the EXEC 
cannot reasonably be expected to know all the defaults of every compiler.
Solution:  Any switches typed by the user which could affect the compiler will be
passed to the compiler. Don't pass defaults any more. This is EDIT #974 to the 
EXEC. There is no DDT patch available because this requires significant changes
in the EXEC.

                               [End of TCO 6.1778]
                               TCO-number:  6.1780



Written-by:  PRATT                            Creation-date:  18-Aug-83 14:40:12


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  

The CSAVE command reports an error message to quickly if the user
is not running a program and uses recognition on the command. For
example:

	@RESET
	@CSAV<escape>
	?No program
	@


Diagnosis:  

The EXEC checks to see if we have a program before parsing the rest
of the command. If we don't have program, it generates the error.


Solution:  

Put the test after the confirm. This make the command behave the 
same way as the SAVE command.



                               [End of TCO 6.1780]
                               TCO-number:  6.1790



Written-by:  PRATT                            Creation-date:  31-Aug-83 10:38:14


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 19067



Problem:  

Interrupting the EXEC while it's typing out an error message
leaves jfns for ERRMES.BIN lying around. 


Diagnosis:  

The monitor opens SYSTEM:ERRMES.BIN during an ERSTR jsys. If the user
controls C's while it is open, the file doesn;t get closed and the jfn
hangs around. Before the EXEC does the ERSTR, it sets a flag saying that
it may have to clean up this jfn later. Normally this flag gets reset
after the ERSTR. If it doesn't, the RERET routine does a CLZFF
with CZ%NIF (don't close inferior's files) and CZ%NCL (release
nonopen jfns).


Solution:  

Remove the CZ%NCL bit in the CLZFF call. 



                               [End of TCO 6.1790]
                               TCO-number:  6.1801



Written-by:  TSANG                            Creation-date:  16-Sep-83 15:36:40


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC3


Related-SPR:  	 19485



Problem:  If the user defines LPT: to be DSK: then enter:
@SYSTAT LPT <ESC>
the EXEC doesn't wait for confirmation before it complains. The user gets:
?Filename was not specified
Diagnosis:  In the GETLPT routine, a GTJFN JSYS should fail when attempting to 
get a JFN for LPT which is defines as DSK:. In this case, an error handling 
routine is called following the GTJFN JSYS call.
Solution:  Before calling the error handling routine, a subroutine CONFIRM 
should be called first.

                               [End of TCO 6.1801]
                               TCO-number:  6.1823



Written-by:  PRATT                            Creation-date:  10-Oct-83 11:14:11
Edited-by:   PRATT                            Edit-date:      10-Oct-83 11:17:41


Edit-checked:         No     Document:          Yes    TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  

No way to specify wildcards during an INFO LOGICAL-NAME command.
For example, it would be nice to be able to type I LOG M*: and
get all logical names that begin with M.


Solution:  

Use a special break mask for reading the parse only device field. 
Use WILD% if device has been wildcarded and match the string against
all logical names for both the system and the job. Type out only the
logical names that match.



                               [End of TCO 6.1823]
                               TCO-number:  6.1831



Written-by:  PRATT                            Creation-date:  17-Oct-83 13:24:47


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:  


The EXEC tries to set the CCOC word for a linefeed so that it
echo's like a CRLF. The byte pointer to do that is being assembled 
incorrectly by Macro which is generating a one word global byte pointer.

Under the current microcode, the DPB which uses that byte pointer
fails because the P field is > 36. 

Under the new "fast" OWGBP microcode which apperently also includes
the OWGBP's which can execute in section 0, that byte pointer is causing
problems with the EXEC startup code.



Diagnosis:  

No problems are noticeable under the current microcode because 
when the job is created, the monitor uses a default CCOC for the TTY.
That CCOC already handles the linefeed the way the EXEC wants.


Solution:  

Make sure that the MACRO maintainer knows about the MACRO problem.

Change the following byte pointer to something more reasonable.
   DPB A,[POINT 2,ETTYMD+TTWCOC+<"J"-100>*2/36,<"J"-100>*2+1-<"J"-100>*2/36*36]

Also since we're right there, change:
   DPB A,[POINT 2,ETTYMD+TTWCOC+""*2/36,""*2+1-""*2/36*36]




                               [End of TCO 6.1831]
                               TCO-number:  6.1837



Written-by:  TSANG                            Creation-date:  20-Oct-83 13:45:23
Edited-by:   TSANG                            Edit-date:      10-Nov-83 14:23:57


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-SPR:  	 19628



Problem:  RENAME command gives inconsistent error character (question mark ? , or
percent sign %) in reporting an error condition, for example :
	@RENAME FOO.*		!ESCAPE
	?File not found - "FOO.*"
	@RENAME FOO.*		!CARRIAGE RETURN
	%File not found - FOO.*
** Note: No FOO.* exists.
These commands, included DIRECTORY, FDIRECTORY, TDIRECTORY, VDIRECTORY, ARCHIVE,
DELETE and DISCARD have the same result as RENAME does. Obviously, it matters
little at the interactive command level what the leading error character is, but
that is not the case under batch, where it is very important for people who want
to do "intelligent" operations which work in the general case.
Diagnosis:  Should we make the error character consistent or leave the way it is?
If we choose to make the error character consistent, which error character 
should we use, question mark or percent sign?
Solution:  Make the error character consistent. Use "?" for RENAME, ARCHIVE and
DISCARD commands, "%" for DELETE, DIRECTORY, FDIRECTORY, TDIRECTORY and
VDIRECTORY.

                               [End of TCO 6.1837]
                               TCO-number:  6.1842



Written-by:  PRATT                            Creation-date:  26-Oct-83 11:57:15


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE


Related-SPR:  	 19665



Problem:  

     Giving the command SET TIME-LIMIT 0 gives an error message of

     ?Use "SET TIME-LIMIT 0" to cause Time-Out


     Negative numbers are once again accepted by the SET TIME-LIMIT 
     command.


Diagnosis:  

There was a change made to rel 4 which prevented negative 
arguments from being accepted. This change was applied incorrectly
to the rel 5 exec.



Solution:  

If a 0 argument is specified, output an error message saying:

	?Use "SET NO  TIME-LIMIT"

If a negative argument is specified, output an error message saying:

	?Negative number not allowed



                               [End of TCO 6.1842]
                               TCO-number:  6.1847



Written-by:  PRATT                            Creation-date:   3-Nov-83 15:38:39


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXEC1	EXECPR	EXECGL




Problem:  

There is no way to prevent LOGIN.CMD and COMAND.CMD from being taken 
during login. Quite frequently it is advantageous to login very quickly
without the overhead of the command files. 


Diagnosis:  No code. 


Solution:  

Add a /FAST switch to the LOGIN command which bypasses the command files,
mail checking and system mail typeout. 



                               [End of TCO 6.1847]
                               TCO-number:  6.1852



Written-by:  PRATT                            Creation-date:   8-Nov-83 14:41:56
Edited-by:   PRATT                            Edit-date:       8-Nov-83 14:46:33


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:  

The TERMINAL HELP command types out a large block of text which
is built into the EXEC.  This text is now out of date and needs
to be updated. 

Also it would be nice to remove the text from the EXEC. This makes
the EXEC a little smaller and at the same time allows documentation
to change the text without making changes to the EXEC.


Diagnosis:  

Solution:  

Make the TERMINAL HELP command act implicitly like a HELP TERMINAL command.
This requires the text to be put in a file called HLP:TERMINAL.HLP.
If the file does not exist, generate an error which says:

	No help availble. The file HLP:TERMINAL.HLP was not found.



                               [End of TCO 6.1852]
                               TCO-number:  6.1857



Written-by:  TSANG                            Creation-date:  10-Nov-83 14:54:43


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  Add a new feature to EXEC. 

Diagnosis:  Make LOGOUT of another job give the victim's name and ask for 
confirm. If you logout a job other than yourself, the system will print
out a message as following: 
Do you want to logout XXXXX?
[Confirm]

and the system waits for your confirmation (a carriage return).
Solution:  Fix in ..LOGO subroutine of EXEC1.MAC

                               [End of TCO 6.1857]
                               TCO-number:  6.1858



Written-by:  TSANG                            Creation-date:  10-Nov-83 15:01:57
Edited-by:   TSANG                            Edit-date:      10-Nov-83 15:12:31


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  Yes    Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  If you submit a command string as following:
@COMPILE FOO/L
You will get a error message like:
?Carriage return, switch, filespec, comma, "@", "+", or "%" required - Filename
was not specified - "/L"
The error message makes no sense.
Diagnosis:  EXECCS.MAC handles the error message badly.
Solution:  Modify COMIN1 subroutine in EXECCS.MAC to create a meaning message.
The message should like: 
?Ambiguous - "/L"

                               [End of TCO 6.1858]
                               TCO-number:  6.1865



Written-by:  PAETZOLD                         Creation-date:  15-Nov-83 08:57:07


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  

@INFORMATION (ABOUT) ARPANET STATUS command is wrong.  It reports status
of arpanet when it does not exist and the status it reports when arpanet
is present is misleading and not meaningful.

Diagnosis:  

This command was written before the days of TCP/IP when everything it 
knew about changed.

Solution:  

Rewrite the ARPANET STATUS command (not hard).   Handle the case where 
the system has arpanet code but is on a network other than ARPANET
(eg. MILNET).  Report local host name, interface status, desired 
interface status, whether netowkr output is allowed, time and date of 
last online transistion, offline transistion, and cycle transistion.


                               [End of TCO 6.1865]
                               TCO-number:  6.1870



Written-by:  PRATT                            Creation-date:  18-Nov-83 16:43:44
Edited-by:   PRATT                            Edit-date:      20-Nov-83 19:31:08


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXEC1	EXEC3	EXECCA	EXECDE	EXECIN
			EXECMT	EXECPR	EXECSE	EXECSU




Problem:  

There a number of commands which fall under the feature test
switch for new features. Most of these "new" features are not 
new and have been a part of the standard EXEC since 5.0. 


Diagnosis:  No one removed the conditionals when the code became supported.


Solution:  

Remove any code which falls under the NONEWF conditional that
is documented in the rel 5 commands reference manual. Also 
remove the NEWF conditionals from around the related code.



                               [End of TCO 6.1870]
                               TCO-number:  6.1874



Written-by:  PRATT                            Creation-date:  20-Nov-83 20:04:42
Edited-by:   PRATT                            Edit-date:      21-Nov-83 16:49:54


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  

INFO MAIL SYSTEM runs MS to type out system messages. This is
different than the system mail typeout during login which runs
RDMAIL.  This also presents a problem for those sites which 
haven't bought MS. 

Also, there is no help or noise which makes it clear that SYSTEM
can be typed as an argument.


Diagnosis:  

Someone commented out the code which called the routine to run
RDMAIL and substituted the code to run MS as an emphemoral.


Solution:  

Remove the MS code and use the older code which ran RDMAIL. 
Also rewrite the code a little so that a ? will mention
usernames and SYSTEM.



                               [End of TCO 6.1874]
                               TCO-number:  6.1881



Written-by:  PRATT                            Creation-date:  28-Nov-83 09:52:13


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  

The multi-forking subcommands to START and CONTINUE can be
specified too many different ways. 


Diagnosis:  



Solution:  

Only allow STAY, BACKGROUND, and NORMALLY to be typed as a switch
to START and CONTINUE. This change will make START and CONTINUE look 
more like the GET, MERGE, and DDT commands which already use switches 
for OVERLAY and USE-SECTION.  Also, this is compatible with COMPILE, LOAD, 
and EXECUTE /STAY.



                               [End of TCO 6.1881]
                               TCO-number:  6.1885



Written-by:  PRATT                            Creation-date:  29-Nov-83 11:18:17
Edited-by:   PRATT                            Edit-date:      29-Nov-83 11:20:32


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN	EXECCA




Problem:  

The INFORMATION (ABOUT) DOWNTIME command should be removed 
from the EXEC. It is under a feature test switch NEWFSW which
we don't normally turn on and it runs a program called MHALT
which we don't distribute.


Diagnosis:  

Solution:  Remove the code. 



                               [End of TCO 6.1885]
                               TCO-number:  6.1886



Written-by:  PRATT                            Creation-date:  29-Nov-83 13:47:15


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCA




Problem:  The MFRK feature test is no longer needed.

Diagnosis:  Multi-forking is being supported for release 6.

Solution:  Remove the MFRK conditionals in EXECCA which is
          the only place that uses them anymore.



                               [End of TCO 6.1886]
                               TCO-number:  6.1914



Written-by:  TSANG                            Creation-date:  16-Dec-83 16:53:48


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  If you compile a file with an unrecognized file type, no action will 
be taken.
Diagnosis:  This problem only happens in V6 EXEC. In V4, V4.1, V5 and V5.1, the
FORTRAN compiler will be invoked.
Solution:  Make the V6 EXEC work as old way, because people get used to it.

                               [End of TCO 6.1914]
                               TCO-number:  6.1923



Written-by:  PRATT                            Creation-date:   4-Jan-84 13:16:26


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  Yes


Program:  EXEC
  Routines-affected:   	EXEC1	EXECSU




Problem:  

The EXEC cannot be run as an inferior to a process in a 
detached job.  DATATRIEVE must be allowed to do this or
it can't be shipped.


Diagnosis:  

If a DVCHR jsys is performed for the controlling terminal but
the job is detached, the DVCHR will block until someone attaches
to the job.


Solution:  

If the job is detached, bypass the DVCHR. This needs to be done 
in the PUSHIO, LTTYMD, and RTTYMD routines.



                               [End of TCO 6.1923]
                               TCO-number:  6.1928



Written-by:  MCCOLLUM                         Creation-date:   9-Jan-84 20:20:28
Edited-by:   MCCOLLUM                         Edit-date:       9-Jan-84 20:22:10


Edit-checked:         No     Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:  
THE EXEC COMMAND "TERMINAL PAUSE (ON) CHARACTER" DOES NOT WAIT FOR CONFIRMATION
IF THE "UNPAUSE" CHARACTER IS ENTERED AS ASCII CODE 0.


Diagnosis:  
ROUTINE ..PPCH CALLS ROUTINE PPGETC TO PARSE THE "UNPAUSE" CHARACTER WITH AN
OPTION TO DEFAULT THIS CHARACTER BY TYPING CONFIRMATION. PPGETC FLAGS
CONFIRMATION BY RETURNING A ZERO IN AC A, WHERE THE ASCII CODE FOR THE UNPAUSE
CHARACTER IS RETURNED. THEREFORE, ENTERING ASCII CODE 0 AS THE UNPAUSE CHARACTER
IS INTERPRETTED BY ..PPCH AS MEANING THE USER TYPED A CONFIRMATION. ..PPCH
THEN DEFAULTS THE UNPAUSE CHARACTER TO MATCH THE PAUSE CHARACTER AND DOES NOT
REQUEST CONFIRMATION OF THE COMMAND.


Solution:  
HAVE PPGETC FLAG CONFIRMATION BY RETURNING A -1 IN AC A, THUS AVOIDING ANY
POSSIBLE CONFLIST WITH ANY ASCII CHARACTER.



                               [End of TCO 6.1928]
                               TCO-number:  6.1939



Written-by:  PAETZOLD                         Creation-date:  18-Jan-84 11:26:04


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  

The "@INFORMATION (ABOUT) SYSTEM-STATUS" command does not display information
about the settings of .SFMS0, .SFMS1, and .SFBGS.

Diagnosis:  

explative deleted.

Solution:  

Add three new lines of output to this command.

Job zero CTY output is enabled/disabled
Sending of system message level zero messages is enabled/disabled
Sending of system message level one messages is enabled/disabled


                               [End of TCO 6.1939]
                               TCO-number:  6.1940



Written-by:  PRATT                            Creation-date:  18-Jan-84 12:43:23
Edited-by:   PRATT                            Edit-date:      19-Jan-84 16:26:22


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  

The changes made to the LOGOUT "n" code:
	
	1) don't work with not logged in jobs.

	2) have no comments in the code

	3) doesn't "[CONFIRM]" correctly
Diagnosis:  

Solution:  Rewrite it.



                               [End of TCO 6.1940]
                               TCO-number:  6.1945



Written-by:  MCCOLLUM                         Creation-date:  20-Jan-84 15:54:54
Edited-by:   MCCOLLUM                         Edit-date:      20-Jan-84 15:55:37


Edit-checked:         No     Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:  
The EXEC's "TERMINAL PAUSE (ON) CHARACTER" command allows invalid ASCII codes
to be entered.


Diagnosis:  
If the character is entered as an octal number, the number is not range checked.


Solution:  
Range check the number. Allow from 1 to 177, octal.



                               [End of TCO 6.1945]
                               TCO-number:  6.1953



Written-by:  PAETZOLD                         Creation-date:  24-Jan-84 16:35:01


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE




Problem:  

NO WAY TO CONTROL SYSTEM MESSAGE LEVELS OR WORKING SET PRELOADING FROM THE
EXEC (OR OPR).

Diagnosis:  


Solution:  

ADD THE FOLLOWING COMMANDS:

^ESET LEVEL-ZERO-MESSAGES
^ESET LEVEL-ONE-MESSAGES
^ESET WORKING-SET-PRELOADING



                               [End of TCO 6.1953]
                               TCO-number:  6.1957



Written-by:  MCCOLLUM                         Creation-date:  26-Jan-84 16:57:35
Edited-by:   MCCOLLUM                         Edit-date:      26-Jan-84 16:57:47


Edit-checked:         No     Document:          No     TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU




Problem:  
"INFORMATION PROGRAM" or "INFORMATION FORK" after any program failure causes
internal EXEC errors and EXEC destruction.


Diagnosis:  
The routine %X in EXECSU is jumping to the wrong label.


Solution:  
Fix label.



                               [End of TCO 6.1957]
                               TCO-number:  6.1960



Written-by:  CJOHNSON                         Creation-date:  30-Jan-84 13:38:31
Edited-by:   CJOHNSON                         Edit-date:      30-Jan-84 13:41:34


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE


Related-SPR:  	 19931



Problem:   Eliminate password prompting in SET DIRECTORY PASSWORD when possible.

Diagnosis:   The SET DIRECTORY PASSWORD logic asks for the old password first,
even if it really won't need it.

Solution:   Ask for new password first, try the CRDIR%, then only if that
fails ask for the old password.


                               [End of TCO 6.1960]
                               TCO-number:  6.1965



Written-by:  MCCOLLUM                         Creation-date:   3-Feb-84 11:34:09
Edited-by:   MCCOLLUM                         Edit-date:       3-Feb-84 17:00:16


Edit-checked:         No     Document:          Yes    TCO-tested:  Yes
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  
.BLI files are being compiled by the BLISS compiler rather than BLIS10 as they
were in 5.1


Diagnosis:  
The default compiler for .BLI files was incorrectly changed form BLIS10 to
BLISS.


Solution:  
Change the default compiler for .BLI files back to BLIS10. Use the BLISS
compiler for .B36 files. Use BLIS10 for .B10 files. Make .R36 be the same
as .REQ files (run BLISS with the /LIBRARY switch). Also, add switches to
specify a default BLISS compiler (/10-BLISS and /36-BLISS).



                               [End of TCO 6.1965]
                               TCO-number:  6.1967



Written-by:  PRATT                            Creation-date:   9-Feb-84 14:58:59


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE




Problem:  

The ^ECEASE command sometimes allows a person who is working
in a network environment to accidentally shutdown the wrong
system.


Diagnosis:  


Solution:  

Make the command type out the name of the system and when it
will be shutdown. Also require an addtional confirm.

At the same time, create a new argument called "NOW" which brings
the machine down immediately after the confirm.



                               [End of TCO 6.1967]
                               TCO-number:  6.1982



Written-by:  PRATT                            Creation-date:  27-Feb-84 09:21:16


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE




Problem:  Some ^ESET commands are not being confirmed


Diagnosis:  The ONEWRD flag is not being set


Solution:  Set it



                               [End of TCO 6.1982]
                               TCO-number:  6.2004



Written-by:  MCCOLLUM                         Creation-date:  20-Mar-84 15:22:24


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP	EXECDE




Problem:  
The EXEC 'NAME' command causes the attributes of a fork set up in the 'SET
PROGRAM' command to be lost.


Diagnosis:  
The code makes no attempt to copy the attributes of the old fork name to the
new fork name.


Solution:  
Rewrite the 'NAME' command. If the new name has attributes set in a previous
'SET PROGRAM' command, use those attributes and tell the user. Else, use the
attributes of the old name.



                               [End of TCO 6.2004]
                               TCO-number:  6.2018



Written-by:  CJOHNSON                         Creation-date:  28-Mar-84 14:05:43


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN


Related-SPR:  	 20042



Problem:  
 The sorting algorithm used in the @INFORMATION DECNET command is
both slow and broken.

Diagnosis:  
 The sort uses a one-word signed compare (won't work).  Also, each
iteration through the node table produces one (1) name to be output.
This requires an immense number of iterations to output the table
sorted.

Solution:  
 Make name comparisons do a full string compare.  Choose a better sort
algorithm.


                               [End of TCO 6.2018]
                               TCO-number:  6.2049



Written-by:  PRATT                            Creation-date:  26-Apr-84 14:40:51
Edited-by:   LEACHE                           Edit-date:      29-Apr-84 17:03:53


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU




Problem:    /LETTER-QUALITY and /LEFT-MARGIN are not supported exec switches 
and must be removed for field test.

Diagnosis:    These switches are used for inhouse diablo support.

Solution:    Remove the code.


                               [End of TCO 6.2049]
                               TCO-number:  6.2050



Written-by:  PRATT                            Creation-date:  26-Apr-84 14:58:46
Edited-by:   LEACHE                           Edit-date:      29-Apr-84 17:04:43


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSE




Problem:    ^Ecease will not work if running an arpa (non-decnet) monitor
without a site-address.txt file.

Diagnosis:    No host number has been set, so the GTHST jsys returns a 0. 
A subsequent GTHST jsys to print the host name string fails.

Solution:    Ignore the error return. No host name will type out.


                               [End of TCO 6.2050]
                               TCO-number:  6.2054



Written-by:  MCCOLLUM                         Creation-date:   1-May-84 15:07:56


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:  
It is impossible to compile a program in the foreground with the load class
commands when /STAY is the default for a compiler.


Diagnosis:  
There is no /NOSTAY switch.


Solution:  
Implement a /NOSTAY switch

                               [End of TCO 6.2054]
                               TCO-number:  6.2087



Written-by:  EVANS                            Creation-date:   6-Jun-84 12:39:25
Edited-by:   EVANS                            Edit-date:       6-Jun-84 12:56:09


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:    	[S] When an attempt is made to expunge an unmounted structure, the "Structure Not Mounted" message is displayed for every directory. 
In addition, it is possible to get a DIR of <ROOT-DIRECTORY> of an unmounted structure.

Diagnosis:    	[D] The edit to prevent expunge of unmounted structures was put
in the DELDF JSYS code. The EXEC does the actual stepping of directories on the
structure. Thus, the EXEC steps the directory, the check for mounting is made,
the error message displays, the EXEC steps to the next directory, etc.

Solution:    	[C] In EXEC1 at .EXPUN, after getting the directory information,
call a subroutine to check for a mounted structure. The subroutine uses MSTR
and DVCHR to determine first if the structure is the PS: or non-regulated. If
it is neither, determine if the user has mounted it. IF not, give the error
message, do not proceed with the expunge, and remain at EXEC level.
For the DIR of <ROOT-DIRECTORY>, use the same routine (having been made global).


                               [End of TCO 6.2087]
                               TCO-number:  6.2091



Written-by:  MCCOLLUM                         Creation-date:   7-Jun-84 16:43:54


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  
The EXEC's "INFORMATION MEMORY" command will create page zero in a process
if that page does not exist when typeout mode is set to SYMBOLIC.


Diagnosis:  
Routinw CHKSYM in EXECIN calls a routine to read the word in the process
containing the pointer to the symbol table. This routine then reads the
word from the page, creating it if it does not exist.


Solution:  
Change CHKSYM to determine if the page exists before it reads the word.
If it does not, then it will assume there is no symbol table.



                               [End of TCO 6.2091]
                               TCO-number:  6.2093



Written-by:  MCCOLLUM                         Creation-date:  12-Jun-84 11:55:22


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0


Related-QAR:  	706081



Problem:  
The EXEC's "TERMINAL NO PAUSE CHARACTER" command sets pause characters rather
than unsetting them.


Diagnosis:  
The code in the EXEC does not pay any attention to the "NO" keyword and
proceeds to set the pause/unpause characters.


Solution:  
Fix the code in routine ..PPCH to ask for confirmation before characters
are input if the "NO" keyword is typed. Then reset the pause/unpause
characters to ^S and ^Q, respectively.



                               [End of TCO 6.2093]
                               TCO-number:  6.2097



Written-by:  MCCOLLUM                         Creation-date:  13-Jun-84 16:43:13


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  
The /SIGNAL feature of the START command is not working.

Diagnosis:  
The code at .CSIGN stores the device designator in ac A which is trashed
by a call to parse keywords.

Solution:  
Store the device designator somewhere safe and restore it to A after the
keywords have been parsed.


                               [End of TCO 6.2097]
                               TCO-number:  6.2099



Written-by:  MCCOLLUM                         Creation-date:  14-Jun-84 15:06:52
Edited-by:   MCCOLLUM                         Edit-date:      14-Jun-84 15:14:53


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS




Problem:    
LINK cannot find files on some directories that have a TOPS-10 PPN set.

Diagnosis:   The EXEC creates "hacked device designators" (HDDs) to  describe
files. These designators contain  the RH of a  device designator in the  RH
and the RH of the PPN, obtained from  the STPPN JSYS, in the LH.  The  EXEC
is assuming that the LH  of this PPN is always  4, but it may be  anything.
When this HDD is  passed down to a  compiler or LINK, it  uses 4 for a  LH.
This causes the program to be unable to find the file.

Solution:   The LH of the directory number  is always 4. Use RCDIR to  return
the directory number and pass the RH of this to the program.


                               [End of TCO 6.2099]
                               TCO-number:  6.2101



Written-by:  MCCOLLUM                         Creation-date:  15-Jun-84 11:48:30
Edited-by:   MCCOLLUM                         Edit-date:      25-Jun-84 10:19:14


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execin




Problem:  
There is no way to tell from the EXEC in a batch job if a logical name
is defined or not.


Diagnosis:  
The EXEC does not print anything in the "INFORMATION LOGICAL-NAMES" command
if the logical name is not defined.


Solution:  
Add the warning message "%Logical name FOO: is not defined".



                               [End of TCO 6.2101]
                               TCO-number:  6.2113



Written-by:  PRATT                            Creation-date:  29-Jun-84 13:55:43


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU


Related-QAR:  	706144



Problem:    

MODIFY PRINT n /[NO]HEADER does the opposite of what is expected.

Diagnosis:   EXEC is passing the wrong parameter to QUASAR.

Solution:  

Exchange the labels .MNOHE and .MHEAD in EXECQU.


                               [End of TCO 6.2113]
                               TCO-number:  6.2128



Written-by:  MCCOLLUM                         Creation-date:  13-Jul-84 14:40:43


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	execca




Problem:  
When "@G?" is typed to the EXEC, the only option shown is "GET". Yet when
"@G<ESC>" is typed, it is not unique.


Diagnosis:  
The "GOTO" command, used under MIC and BATCH, makes "@G" non-unique.


Solution:  
Make "G" a valid abbreviation for "GET", eliminating the inconsistency between
the help maessage and reality.



                               [End of TCO 6.2128]
                               TCO-number:  6.2129



Written-by:  SANTIAGO                         Creation-date:  16-Jul-84 15:31:05
Edited-by:   SANTIAGO                         Edit-date:      17-Jul-84 14:32:12


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN	EXECPR




Problem:      INFORMATION DISK-USAGE COMMAND TOO SLOW

Diagnosis:      EXECIN DOES TWO GTFDB% WHEN IT COULD DO ONLY ONE.

Solution:      STORE VALUE GOTTEN BY GTFDB% IN TEMP. BUFFER


                               [End of TCO 6.2129]
                               TCO-number:  6.2133



Written-by:  PROBINSON                        Creation-date:  18-Jul-84 16:20:03
Edited-by:   PAETZOLD                         Edit-date:      20-Jul-84 13:56:30


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP	EXECDE




Problem:    
With DDT v43, user DDT now runs in its own section, and is called XDDT
instead of UDDT.  (UDDT is now a stub for compatibility, which simply
loads XDDT.)  The EXEC is still using UDDT in all cases.

Diagnosis:    
No code to recognize XDDT or the conditions under which it should be used.

Solution:    
Teach the EXEC to use XDDT instead of UDDT.  The procedure in general
is as follows:

1.  If XDDT is already in the fork (determined by looking for its PDV),
    start it.

2.  If XDDT is not in the fork, then if either PA1050 is present or
    the fork has a TOPS-10 entry vector in section 0, merge in UDDT
    and start it (just like old behavior).  This will keep TOPS-10
    style programs (and PA1050) happy.

3.  If all else fails, merge XDDT into a free section and start it.


                               [End of TCO 6.2133]
                               TCO-number:  6.2135



Written-by:  PRATT                            Creation-date:  19-Jul-84 14:02:49


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-QAR:  	706174



Problem:    

The CMERR$ is typing out garbage text which has been leftover from 
a previous command.  Sometimes this garbage text can be from the users
LOGIN command string and usually displays the password.

Diagnosis:    

The code puts a linefeed at the end of the current command, so that COMND
will not go into terminal input. Unforunately, the linefeed overwrites 
the null that terminates the string.

Solution:    

Re-write the null byte after the linefeed has been inserted.


                               [End of TCO 6.2135]
                               TCO-number:  6.2136



Written-by:  PRATT                            Creation-date:  19-Jul-84 15:52:22


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:    

Lots of users have command files with guide words in them. Someone
changed the TERMINAL command to have new and more descriptive 
guide words.  This breaks those command files.

Diagnosis:  

Solution:    

Change the code to allow both the old and the new guide words. If
escape is typed the new guide words will be used.


                               [End of TCO 6.2136]
                               TCO-number:  6.2139



Written-by:  TBOYLE                           Creation-date:  20-Jul-84 15:28:29
Edited-by:   TBOYLE                           Edit-date:      24-Jul-84 13:02:50


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0


Related-SPR:  	     4



Problem:  TERMINAL command can give misleading errors.

Diagnosis:  The EXEC has a catch-all error "?Invalid terminal type."
for any error return from STTYP% JSYS.

Solution:  Replace generic error with call to CJERRE which will
print out the exact kind of failure. ?Invalid terminal type will
still be printed when that case occurs.


                               [End of TCO 6.2139]
                               TCO-number:  6.2140



Written-by:  PRATT                            Creation-date:  20-Jul-84 16:08:30


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU


Related-QAR:  	706079



Problem:    

INFORMATION PROGRAM or INFORMATION FORK  will  produce  an  illegal
instruction trap if:

        SET TYPEOUT MODE is SYMBOLIC

	and

	The fork is not a direct inferior of the EXEC

	and 
        
	The fork is execute-only.

Diagnosis:    

The MAPPF routine isn't behaving as it's documented. Currently it
returns +1 only if the ACs of the target fork can not be read and returns
+2 with no access and existence bits set in all other "can't read" cases
(such as execute-only forks). MAPPF should return + 1 on any mapping
failure.

Solution:    

Have MAPPF perform as expected, return +1 on any mapping failure,
and +2 when mapping succeeds (even if the pages are non-existant).

In addition, if no fork exists, set the last process error to ILLX04
(Reference to non-existent page). This will prevent any callers (such
as the Examine command) who jump to CJERRE from typing out an old 
error code.


                               [End of TCO 6.2140]
                               TCO-number:  6.2143



Written-by:  PRATT                            Creation-date:  23-Jul-84 16:09:24


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECQU


Related-QAR:  	706122



Problem:    

The EXEC can go into an infernal loop for the print command if
the file(s) being queued are deleted between the time of the command
and the when the the queue request is being built.

Diagnosis:    

There is a typo in the routine FILBK1.  The GTFDB jsys at FILBK1+21
has an ERJMP to FILBK1.

Solution:    

Change the ERJMP to go to FILBKE.


                               [End of TCO 6.2143]
                               TCO-number:  6.2156



Written-by:  SANTIAGO                         Creation-date:   1-Aug-84 11:15:45
Edited-by:                                    Edit-date:       2-Aug-84 09:44:11


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	All	EXEC	modules




Problem:      EXEC is running at less than optimal speed.

Diagnosis:      The EXEC uses LUUO's excessively.  These take up enormous
	overhead and, although they are a pretty neat trick,  they're
	too inefficient and slow to be used for oft-called procedures.

Solution:      Replace all LUUO calls in  EXEC with macros expanding into
	PUSHJ's  calling a handler  subroutine plus an extra word
	containing the data passed to the routine.  Also fix up
	certain LUUO-dependent parts (ie pushing an LUUO to stack
	and XCTing it) to work with this format.


                               [End of TCO 6.2156]
                               TCO-number:  6.2161



Written-by:  GLINDELL                         Creation-date:   3-Aug-84 17:08:20


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  
If a program has an entry vector in a non-zero section, and the
user types START "an address in section 0", the program will not
be started in section 0, but in the section where the entry vec-
tor is.

Diagnosis:  
EXEC uses SFORK instead of XSFRK if the section # is 0. SFORK
defaults an 18-bit address to the entry vector section.

Solution:  
Make the DSFORK routine in EXECP always use XSFRK% so the behaviour
of the START command is consistent with the documentation.


                               [End of TCO 6.2161]
                               TCO-number:  6.2175



Written-by:  SANTIAGO                         Creation-date:  15-Aug-84 16:52:26


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  "FORK N" command explodes if N is an inferior fork which has
	never been seen by an "INFO FORK-STATUS".

Diagnosis:  "FORK" command assumes that if there is no entry in
	fork table FRKTAB, the referenced fork does not exist.
	Therefore any fork not explicitly created by the EXEC
	will not be recognized.

Solution:  Do a GRFKS% before the RFSTS% in .FORK in order to get
	info on all forks. Then if an entry is not found in FRKTAB
	for the desired fork, search through the GFRKS% output to
	see if it really does exist but the EXEC isn't aware.


                               [End of TCO 6.2175]
                               TCO-number:  6.2184



Written-by:  PRATT                            Creation-date:  20-Aug-84 16:18:56


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECP




Problem:  

When running an emphemeral program, the REPH code calls MAPPF to
unmap pages. The CALL PIOFF right after the CALL to MAPPF is being skipped.

Diagnosis:    	

MAPPF will always skip return with the arguments used by REPH

Solution:  	Add a JFCL after the MAPPF call so the PIOFF will be done


                               [End of TCO 6.2184]
                               TCO-number:  6.2188



Written-by:  SANTIAGO                         Creation-date:  21-Aug-84 14:44:46
Edited-by:   SANTIAGO                         Edit-date:      21-Aug-84 14:46:44


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECCS


Related-SPR:  	 19854



Problem:    The COMPILE command allows users to type colons and text
after switches which do not interpret any data. It then ignores the
colon, treating it as any other delimiter, and processes the text
as the next field in the command.

Diagnosis:    The COMND% JSYS returns a flag bit set if a colon was
typed immediately after a switch. The COMPILE code ignores this
bit completely.

Solution:    Have the EXEC look at the flag bit returned by COMND% and
blow up if a colon was typed for a non-colonial switch.


                               [End of TCO 6.2188]
                               TCO-number:  6.2222



Written-by:  EVANS                            Creation-date:  20-Sep-84 08:55:28
Edited-by:   EVANS                            Edit-date:      21-Sep-84 09:29:56


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXECGL	GLOB	STG




Problem:      EXEC (and Monitor) are unaware of the VT200 terminal type.

Diagnosis:      The terminal tables have no entries for it.

Solution:      Add the entries. Also, make both the Monitor and EXEC aware of all
terminal types - if one knows about a terminal, so should the other.


                               [End of TCO 6.2222]
                               TCO-number:  6.2228



Written-by:  MCCOLLUM                         Creation-date:  26-Sep-84 15:00:41


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECGL	EXEC1	execin




Problem:  
The EXEC does not display the correct status of USER-MESSAGES, SYSTEM-MESSAGES,
ADVICE, and LINKS when the INFO TERMINAL command is given with a line other
than the users line.


Diagnosis:  
Routine RTTFLG in EXEC1 is called to return the flags for that terminal line.
But this routine always uses the controlling terminal and the flags displayed
are always for the users controlling terminal.


Solution:  
Add an entry point to routine RTTFLG that allows the caller to specify a line
number and call this routine from EXECIN.



                               [End of TCO 6.2228]
                               TCO-number:  6.2229



Written-by:  MCCOLLUM                         Creation-date:  26-Sep-84 16:43:40


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0	EXECSU




Problem:  
Issuing a DEPOSIT command to the EXEC with no current fork causes a fork to
be created without a name. Typing ^T will display an apparently random name
for the fork name.


Diagnosis:  
When the fork is created by the DEPOSIT command, it copies into the fork data
block the defaults in ITTYMD. The default for the private name in this block
is equivalent to the last string that was SETNMed, which could be anything.


Solution:  
After the call to ECFORK to create the inferior, clear the private name for
the new fork. Have the control T code check for a null name and print the
subsystem name if there is no private name. This will result in all cases
in the string 'EXEC' being typed for the fork name.



                               [End of TCO 6.2229]
                               TCO-number:  6.2230



Written-by:  MCCOLLUM                         Creation-date:  27-Sep-84 11:12:07
Edited-by:   MCCOLLUM                         Edit-date:       8-Oct-84 14:23:02


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC0




Problem:  
When the EXEC's DEPOSIT command is used to change a location in a shared page,
the EXEC types out [SHARED]. This implies that the page is now shared which
is misleading since the page is definitely no longer shared.


Diagnosis:  


Solution:  
Change the text that the EXEC types out to "[Shared page made private]".



                               [End of TCO 6.2230]
                               TCO-number:  6.2231



Written-by:  MCCOLLUM                         Creation-date:  28-Sep-84 15:54:50


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:  
Typing 'I L :' to the EXEC results in the message "%Logical name JOB: not
defined" if JOB: is not defined or the definition of JOB: if it is defined.


Diagnosis:  
When a keyword is entered rather than a logical name, the code after the
COMND% Jsys was checking to see if it was followed by a colon. Since ':'
does not match any logical name or keyword, COMND% defaulted the input to
'JOB'. Since the next character unparsed character was a colon, the EXEC
appends it to 'JOB' and proceeds to process that logical name.


Solution:  
The code that checks for a ':' following a keyword is superfluous. This may
have been needed in the past before the code accepted logical names 'parse-
only'. But now, entering a keyword as a logical name (e.g. 'JOB:') will
match a logical name and not a keyword.



                               [End of TCO 6.2231]
                               TCO-number:  6.2233



Written-by:  MCCOLLUM                         Creation-date:   2-Oct-84 13:55:43
Edited-by:   MCCOLLUM                         Edit-date:       8-Oct-84 14:23:49


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXEC1




Problem:  
The EXEC types out 'NO EXEC' when the PUSH command is issued whenever it
cannot get a JFN, for whatever reason. This is insufficient information.


Diagnosis:  


Solution:  

Have the EXEC type out 'Can't get EXEC because: ' followed by the actual
error code returned by the GTJFN call.



                               [End of TCO 6.2233]
                               TCO-number:  6.2234



Written-by:  MCCOLLUM                         Creation-date:   2-Oct-84 16:04:28
Edited-by:   MCCOLLUM                         Edit-date:       8-Oct-84 14:24:02


Edit-checked:         No     Document:          Yes    TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN	EXECSU




Problem:  
The EXEC'S 'INFORMATION MAIL' command will always return say 'Mailbox protected'
on a GTJFN error unless the error is ome type of file not found condition.


Diagnosis:  
It's coded that way.


Solution:  
If the error returned from GTJFN is not a 'file not found' type error and it
is not GJFX35 (Directory access privileges required), don't display 'Mailbox
protected'. Instead, display the text of the actual GTJFN error code.



                               [End of TCO 6.2234]
                               TCO-number:  6.2235



Written-by:  PRATT                            Creation-date:   3-Oct-84 15:27:40


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECSU	EXECIN	EXEC0




Problem:    

	Bug's types ^T to soon after ^C'ing an ephemoral program
	and gets error within error messages repeatedly.

Diagnosis:    

	The Exec has a race condition when cleaning up after 
	an ephemoral program. The fork is being killed off by 
	a KFORK in the ^C/error recovery cleanup code. The user
	types a ^T during the KFORK and causes a ^T interrupt to
	occur when the KFORK completes. 2 problems occur at this point:
	
	1) The instruction right after the KFORK normally clears 
	   EFORK. This doesn't get executed and leaves EFORK pointing
	   at a non-existent fork.

	2) The ^T code looks at EFORK and tries to print out the status
	   of the non-existent fork. It executes an RFSTS that doesn't 
	   have an ERJMP after it. This causes an illegal instruction
	   trap and sets the "error" flag.

	Now, each time the user types ^T, another illegal instruction
	trap and a "error within error" occurs.

	Also, if the user types a ^C, the cleanup/error recovery code
	attempts the KFORK trying to clean up the non-existent fork.
	This causes endless illegal instruction traps and "error within 
	error" messages.

Solution:    

	Four things need to be done:

	1) Put an ERJMP after the KFORK in the ^C code.

	2) Put an ERJMP after the RFSTS in the ^T code.

	3) Clear the "error" flag in the re-initialization code.

	4) Look for other jsys's in the critical error recovery
	   and interrupt routines which don't have ERJMPs after them


                               [End of TCO 6.2235]
                               TCO-number:  6.2236



Written-by:  PRATT                            Creation-date:   3-Oct-84 17:15:39


Edit-checked:         No     Document:          No     TCO-tested:  No 
Maintenance-release:  No     Hardware-related:  No 


Program:  EXEC
  Routines-affected:   	EXECIN




Problem:    	%o types out in an error message during INFO VER

Diagnosis:    	%o isn't defined for ETYPE

Solution:    	Change it to uppercase O


                               [End of TCO 6.2236]