Trailing-Edge
-
PDP-10 Archives
-
bb-bt99e-bb
-
utl702.d08
There is 1 other file named utl702.d08 in the archive. Click here to see a list.
EDIT DESCRIPTIONS FOR UTILITIES-10-V702
EDIT 500 FOR BACKUP
[SYMPTOM]
None.
[DIAGNOSIS]
Set up for version 4A
[CURE]
None.
********************************************************************************
EDIT 501 FOR BACKUP
[SYMPTOM]
BACKUP will not restore files to SFDs if the upper level SFDs or UFD
contains a file of the same name and is the same age or newer and the
user has /SCAN set via SETSRC.
[DIAGNOSIS]
Using the /SCAN switch to determine supersede criteria during restores
is incorrect.
[CURE]
In module BACKRS, in routine CHKSUP, set the .PTSCN switch in the
.PTSWT word of the PATH block used by LOOKUP, while checking to see if
a file should be superseded. This prevents the scanning of upper
level SFDs or the UFD.
********************************************************************************
EDIT 502 FOR BACKUP
[SYMPTOM]
If BACKUP is protected execute-only, a proprietary violation is
reported when a WHAT command is typed after a SAVE is done.
[DIAGNOSIS]
Before calling the BACKRS module to do the actual SAVE, BACKUP does a
CORE UUO to get rid of the high segment to reduce the job size. When
the SAVE is done and a WHAT command is typed, SCAN's routine KEYWDJ is
called to scan for arguments. Since it is in the high segment (which
isn't there) and the JS.XO bit is on, and there is no PORTAL in the
entry point in SCAN (which are many), the monitor gives the user a
proprietary violation.
[CURE]
If BACKUP is execute-only, do not throw away the high segment. This
will solve all transportation problems between the low and high
segment, especially to SCAN high segment code.
********************************************************************************
EDIT 503 FOR BACKUP
[SYMPTOM]
BACKUP will not restore files which were saved from ERSATZ devices.
[DIAGNOSIS]
The DEVNAM UUO does not return the physical device name if passed an
ERSATZ device and that device is not in the job search list. The
DSKCHR UUO will return the structure name given an ERSATZ device name.
[CURE]
In module BACKRS, in routine SETSTR, replace the DEVNAM UUO with the
DSKCHR UUO and appropriate arguments. Also, skip the logical name
translation if "ALL" is the structure name.
********************************************************************************
EDIT 504 FOR BACKUP
[SYMPTOM]
Edit 373 was too restrictive of operator responses to a batch job.
[DIAGNOSIS]
Normally the operator would only want to give the answer GO, but
he might also want to say KILL in case he wants to deny the job an
extra reel of tape.
[CURE]
Edit 373 took too many features away. Restore the check for batch
jobs before reporting error messages in order to precede them with
a $ sign. Restore allowing the operator to type any runtime command.
Solve the original problem (see routine OPRCHS) of allowing numeric
characters to cause breaks. Only comment characters, spaces, tabs and
real break characters will stop parsing. Delete the E$$ICG error, since
it was redundant.
********************************************************************************
EDIT 505 FOR BACKUP
[SYMPTOM]
Minor version numbers greater than 26 ("Z") are output to the listing
file as garbage.
[DIAGNOSIS]
BACKUP assumed that minor version numbers could only be one alphabetic
character.
[CURE]
Add code in LSTVER so that minor version numbers greater than 26 are
supported.
********************************************************************************
EDIT 506 FOR BACKUP
[SYMPTOM]
When writing a tape to be used at another site, it is a good idea to
make sure the tape is error free.
[DIAGNOSIS]
BACKUP defines the maximum number of tape errors to be 100 before
giving a fatal error (a warning is given every time an error is
detected). To change the maximum requires BACKUP to be edited and
rebuilt.
[CURE]
Implement a new switch, ERRMAX n, where n is a required positive
decimal number. If the switch is not given explicitly or in
SWITCH.INI, then the old setting of 100 will be the default.
********************************************************************************
EDIT 507 FOR BACKUP
[SYMPTOM]
None.
[DIAGNOSIS]
Code looks wrong. The definition of NM$TBF is documented in BACKRS to
agree with the NM$TBF definition in BACKUP. The definitions do not
agree.
[CURE]
Make the definitions agree. Change the definition of NM$TBF in BACKUP
to agree with BACKRS.
********************************************************************************
EDIT 510 FOR BACKUP
[SYMPTOM]
"?Illegal data mode for device" error message is given by the monitor
when restoring files from a tape created on another TOPS10 system.
[DIAGNOSIS]
The other system had defined their own data modes. Files written in
these data modes had been saved on the tape. BACKUP got the data mode
of the file being restored and indiscriminately did a SETSTS with the
bit pattern found on the tape. Since these data modes were not
defined in the running monitor, the job got an "?Illegal data mode for
device" error.
[CURE]
Before the SETSTS, do a DEVCHR of the channel OPENed for the file
being restored. If the data mode stored on the tape is not legal for
the device the file is being restored, give the warning "%BKPIDM
Illegal data mode nn for file xxxx, assuming image mode" where nn is
the data mode stored on the tape and xxxx is the full file spec.
Restore the file setting the data mode to image.
********************************************************************************
EDIT 511 FOR BACKUP
[SYMPTOM]
Customers/DEC adding new switches to BACKUP can get confused if they
define the storage following location F$MSN. If the switch calls a
SCAN routine (.SWDEC, for example) as part of an SP macro, SCAN will
not only store the value at the storage location given in the SP
macro, but also at 2 words prior to that location.
[DIAGNOSIS]
BACKUP defines the "P$xxx" and "F$xxx" words in the wrong order. SCAN
expects "P$xxx" to follow "F$xxx"; in BACKUP this is not the case.
This causes SCAN to believe that the new switch storage is part of the
per-file area (checked at FILSW1 in SCAN). SCAN computes SWTPFO (the
offset to the sticky per-file-switches) by subtracting the addresses
of F$xxx from P$xxx. This causes the value of the new switch to be
stored at location minus the length of the per-file areas (in BACKUP's
case, 2).
[CURE]
Move the definitions of P$MBF and P$MSN after the F$xxx. Also
document this aspect of SCAN in BACKUP's comments.
********************************************************************************
EDIT 512 FOR BACKUP
[SYMPTOM]
Users cannot find a particular version of a file when using the
listing features of BACKUP.
[DIAGNOSIS]
BACKUP does not list version numbers in the list files.
[CURE]
Change BACKUP to list the version number of a file if the version
exists. The version number appears after the date and before the
structure name as in the following example:
Start of save set on MTA260 SCHED
System RC177B KL #1026/1042 TOPS-10 monitor 702(24353) APR#1026
800 BPI 9 track 4-Nov-82 13:57:05 BACKUP 4A(512) tape format 1
Tape number 1
BLIS10 EXE 356 <155> 16-Feb-78 7E(227) NEW: [1,5]
********************************************************************************
EDIT 513 FOR BACKUP
[SYMPTOM]
BACKUP's PRINT command occasionally lists file lengths incorrectly.
(The KL-10 V231 Microcode distribution tape is a good example.)
[DIAGNOSIS]
An ASCII file is saved (by DUMPER), storing a byte size of seven, the
actual file length in words, and a data mode of image. When a PRINT
command is typed, BACKUP calculates the size of the file by examining
the data mode of the file. If the data mode is ASCII (mode 0 or 1),
BACKUP then divides the size of the file (stored on the tape in words)
by five. DUMPER had stored the data mode of some of the ASCII files
on the KL-10 V231 Microcode distribution tape as 10 (image mode). The
file size for these files was computed incorrectly because BACKUP did
not divide the number of words by 5.
[CURE]
Change the alogrithm of computing the file size to be based on the
byte size of the file instead of ASCII data modes. The formula has
been taken from DIRECT which does the computation correctly.
********************************************************************************
EDIT 514 FOR BACKUP
[SYMPTOM]
A SKIP n command, where n is greater than the number of tape marks on
the tape, causes the tape to go off the reel.
[DIAGNOSIS]
Physical EOT is only seen on write operations. Since a magtape
skipfile UUO is a monitor read operation, the tape does not stop until
a tape mark is encountered for every logical SKIP command. If the
tape has been positioned after the last tape mark, another magtape
skipfile UUO causes the tape to spin until it goes off the reel.
[CURE]
If the argument to the SKIP command is zero or negative, do not do
anything special. If, and only if, the label type is USER-EOT and the
command argument is positive, do a skip record before the skip file
and check for a tape mark. If there is more data on the tape, then
the skip file operation can be executed. If EOF gets flagged, then
the tape is now positioned AFTER the logical EOT. If EOF is reached,
reposition the tape BEFORE the last tape mark, tell the user
%BKPAMP Attempt to move past logical EOT
and continue processing the SKIP command in case tape arguments were
used.
The error handling routine in the area of this code has been reworked
to ensure errors are actually detected for the specific skip operation
which caused them.
********************************************************************************
EDIT 2065 FOR LOGOUT
[SYMPTOM]
THE STATISTICS TYPED BY LOGOUT DO NOT MATCH THOSE
PRODUCED BY THE ACTDAE
[DIAGNOSIS]
CHARGE FOR EVERTHING NOT JUST BATCH
[CURE]
MAKE THE STATISTICS TYPED BY LOGOUT MATCH THOSE
PRODUCED BYT THE ACTDAE
********************************************************************************
EDIT 50 FOR PFH
[SYMPTOM]
Halt or ill mem ref from PFH when doing dump mode I/O with
an indexed or indirected address in a IN or OUT UUO while
virtual.
**********
[DIAGNOSIS]
We fake up a UUO to execute and supply a pointer to the IOWD
we like, but forget to clear any indirecting or indexing
bits in the original UUO.
**********
[CURE]
When fetching the UUO from the user program, clear the index
or indirect bits.
********************************************************************************
EDIT 51 FOR PFH
[SYMPTOM]
[DIAGNOSIS]
[CURE]
Keep DATEND pointing into page 776. If it overflows a little, it
doesn't matter since first few words of 777 aren't used.
********************************************************************************
EDIT 52 FOR PFH
[SYMPTOM]
Fix up GETWRD some more, allow for the uuo itself to be in AC 1.
Don't use EA as an indirect, use only as a pointer. If the word
pointed to by EA is desired, it is available in AT.EA, filled in
by GETWRD.
[DIAGNOSIS]
[CURE]
********************************************************************************
EDIT 53 FOR PFH
[SYMPTOM]
When running a program that does dump mode I/O virtual:
1) ?Halt at user PC 777472
2) ?Illegal instruction at user PC 777426
**********
[DIAGNOSIS]
1) Dump mode IOWDs are not broken down correctly if they end
in the last data page of the program.
2) Dump mode IOWDs are not correctly traced down if the path
falls through ACs 1-4, or involves indirection or indexing
with these ACs.
**********
[CURE]
1) Add some code around TSTDM7 to notice when to stop
checking for pages being accessible.
2) Rework a lot of code that calls GETWRD and references
variable EA, to avoid doing any address calculations outside
the routine GETWRD.
********************************************************************************
EDIT 176 FOR REACT
[SYMPTOM]
Edit 165 causes incorrect entry to be used as source in I
PPNDST=PPNSRC command if PPNSRC>PPNDST.
[DIAGNOSIS]
PPTAB offset of PPNSRC is found before PPNDST is inserted (if
necessary). This makes the old offset of PPNSRC invalid after the
call to INSSUB if PPNSRC>PPNDST (ie PPNSRC lies above PPNDST in PPTAB
and hence is displayed by INSSUB).
[CURE]
Check and adjust the offset PPNSRC if the tasks are expanded.
********************************************************************************
EDIT 177 FOR REACT
[SYMPTOM]
ENQ/DEQ quotas specified by explicit numbers are read and stored
correctly. For example, explicitly specifying and ENQ/DEQ quota of
511 results in the number 23.
[DIAGNOSIS]
EDIT 162 is incomplete. If <CR> is typed, the default is used,
but if anything else is typed, the default is not cleared.
[CURE]
Check to see if there is a default, if so clear it.
********************************************************************************
EDIT 36 FOR UFDSET
[SYMPTOM]
Undeserved RENAME error 26 messages when trying to mount a
structure with NOWRITE status.
**********
[DIAGNOSIS]
UFDSET sets the structure status to NOWRITE before attempting the
rename.
**********
[CURE]
Set the status after the rename.
********************************************************************************
END OF UTILITIES-10-V702