Trailing-Edge
-
PDP-10 Archives
-
bb-bt99e-bb
-
apl1s2.d02
There are 2 other files named apl1s2.d02 in the archive. Click here to see a list.
EDIT DESCRIPTIONS FOR APLSF-10-V2
EDIT 505 FOR APLSF
[SYMPTOM]
IF )MAXCORE IS LOW AND THE WORKSPACE IS RELATIVELY FULL, A
SYSTEM ERROR MAY RESULT AFTER A WS FULL ERROR.
[DIAGNOSIS]
IF GTCORE FAILS WHEN BUILDING A DATA ENTRY AT DX, GTCERR HAS
TO JUGGLE THE PARTIAL DE AND .BXERROR. .BXERROR HAS TO BE
BUILT AT DX, THE PARTIAL DE MUST BE MOVED, AND THEN DX GETS
MOVED. POINTERS MUST BE FIXED. THE PARTIAL DE MAY HAVE HAD
SOMETHING POINTING TO IT. IF IT DID, WE WANT TO FIX THAT
SOMETHING.
[CURE]
IF THE BACKPOINTER OF THE DE POINTS TO SOMEWHERE REASONABLE,
THEN WE CAN ASSUME THAT THERE REALLY IS SOMETHING POINTING
BACK. IF THE BACKPOINTER LOOKS LIKE GARBAGE, THEN FORGET
ABOUT IT.
********************************************************************************
EDIT 506 FOR APLSF
[SYMPTOM]
APLSF will hang if two or more users are reading the
same file in /DI mode and not using the enqueue/dequeue
facility explicitly (i.e. .BXENQ and .BXDEQ).
[DIAGNOSIS]
APLSF will issue a file lock (i.e. enqueue the file
itself) once a user tries to read a record in /DI mode.
However, it does not release the file lock (i.e. dequeue
the file) at terminal input wait as it should. The routine
GDFUPDATE is the routine that is supposed to reset the file
lock. However, this routine checks ZHOLD to see if the file
is being shared before it will call DEQFLK (to dequeue the
file). In /DI mode, ZHOLD will be true (meaning the file is
not being shared) and no further action will be taken for
this file. Therefore, the file lock is not released at
terminal input wait.
[CURE]
Only check ZHOLD if the file was opened in /DI mode.
This will allow the file lock to be released by calling
DEQFLK.
********************************************************************************
EDIT 507 FOR APLSF
[SYMPTOM]
Creating and manipulating variables with large rank can
cause system errors.
[DIAGNOSIS]
When a data entry is built and the vector of rho values is
put in, APL doesn't always check to see if the vector will
fit in memory.
[CURE]
When building a new data entry, make sure there is enough
memory to put in the vector of rho values in the header.
Write 2 macros, one in macro, one is bliss to check quickly
without destroying anything, and call MFREECH if more memory
is needed. If we can't get more memory, a WSUFLL will
result. The new macros are in MACAPL and DNMAC. Add a
routine SAVMFR in DSTABL to save the AC's and call MFREECH.
Add globals SAVACS and SRANK to aid SAVMFR. Also, in GTCERR
in DLAMCA pretend the rank of the partial data entry is 1,
so it will fit on the stack when it is juggled around to
make room for .BXERROR.
********************************************************************************
EDIT 510 FOR APLSF
[SYMPTOM]
)LIB doesn't work for an Ersatz device if the physical
device is not in the job's search list.
[DIAGNOSIS]
APL thinks that Ersatz devices are generic, and uses the job
search list to find which devices to look on.
[CURE]
Use a PATH UUO to determine if the name is an Ersatz name,
and if so, don't treat it as generic.
********************************************************************************
EDIT 511 FOR APLSF
[SYMPTOM]
Trailing blanks are not always removed when displaying a
large character array.
[DIAGNOSIS]
APL tries to fill AOBUF with as many lines as possible
before doing any actual I/O. APL doesn't call SQZBLNK to
remove trailing blanks from the last line in AOBUF.
[CURE]
Call SQZBLNK before actually writing the contents of AOBUF.
********************************************************************************
EDIT 512 FOR APLSF
[SYMPTOM]
A system error results if the CONTIN workspace has a
password.
[DIAGNOSIS]
Errors while loading CONTIN must be special cased because
APL is not yet set up to handle errors normally.
[CURE]
Add code where necessary to write out an error message, and
then load a clear workspace.
********************************************************************************
EDIT 513 FOR APLSF
[SYMPTOM]
After installing edit 512, APLSF sometimes gets a system
error when starting up. Sometimes edit 512 appears not to
work. The system error is not always the same, nor is it
always reproduceable.
[DIAGNOSIS]
The problem is caused by the accounting routine BILL. APLSF
uses the space at WSHEAD as a buffer for a block from the
accounting file. This can leave random trash where the
workspace is to go.
[CURE]
Use INBUF as a buffer instead of WSHEAD.
********************************************************************************
EDIT 514 FOR APLSF
[SYMPTOM]
Erasing a quad variable with .BXEX produces different
results for different quad variables.
[DIAGNOSIS]
.BXEX only allowed .BXSF, .BXLX and .BXTRAP to be erased,
but returned 0, the failure code. All other quad variables
were not allowed to be erased.
[CURE]
Do not allow any quad variable to be erased. If the user
wishes to erase it, he should assign 0 .RO ' ' to it.
********************************************************************************
EDIT 515 FOR APLSF
[SYMPTOM]
GIGI terminals (VK100) do not work well with APL.
[DIAGNOSIS]
APL does not know the difference between an LA36 and a GIGI.
[CURE]
Add code to handle the differences between a GIGI and an
LA36. The key pairing is the same. The user will have to
load the APL character set into one of the soft sets, and
select the G0 set as ASCII and the G1 set as APL. For
example, this escape sequence will set G0 and G1 if the APL
character set is in soft set one:
$(B$)0
where $ is the escape character.
********************************************************************************
EDIT 516 FOR APLSF
[SYMPTOM]
Execute of a quiet copy worked in version 2(435), but in
version 2(504), causes system errors.
[DIAGNOSIS]
Edit 455 broke execute of a quiet load or quiet copy. Edit
455 keeps INPTR pointing to the codestring around calls to
FREECH in CMD and STOPTR, which can call GCOL. When
executing the quiet functions, INPTR points to INBUF, not a
codestring.
[CURE]
For quiet functions, INPTR should be left alone around the
FREECH calls. INPTR can't be harmed since INBUF is not
touched by GCOL.
********************************************************************************
EDIT 517 FOR APLSF
[SYMPTOM]
Edit 512 broke the automatic execution of .BXLX in a
continue workspace.
[DIAGNOSIS]
One of the activation records was getting trashed somewhere.
[CURE]
Re-work the edit a bit. START should not return false to
always try a )CLEAR. CLRWS will no longer try to load
CONTIN. In CMD, if ZBADCONTIN is set after a )LOAD, then
call CMD and do a )CLEAR.
********************************************************************************
END OF APLSF-10-V2