Trailing-Edge - PDP-10 Archives - bb-bt99g-bb - alg10b.d10
There are 2 other files named alg10b.d10 in the archive. Click here to see a list.
                 EDIT DESCRIPTIONS FOR ALGOL-10-V10B                            
                             EDIT 357    FOR ALGOL
If a filespec passed to OPENFILE includes  a  PPN  specification  like
"[,]",  the  file  is  opened  in  the default path, not the UFD as it
should be.
A PPN of [0,0], which is equivalent to [,], is a  special  case.   The
OPENFILE  procedure  assumed  that a zero PPN meant to use the default
path, and not the path block that had been set up  (which  would  have
opened  the file in the UFD).  Unfortunately, it did not differentiate
between no PPN and a PPN of the form "[,]".
Check for the case of a PPN in the  form  "[,]",  "[,",  etc.   If  it
exists, fill in the user's PPN and use the path block.  This will open
the file in the UFD, while not affecting OPENFILE's functionality when
no PPN is given at all.
                             EDIT 360    FOR ALGOL
The COPY library  procedure  does  not  accept  string  procedures  as
arguments.  It gets a fixed point overflow.
The string header is returned in A0 and A1, and pointed to by A2.  The
COPY  procedure  did  not  anticipate getting a header in the ACs, and
used them in calculations, causing the overflow.
Use different ACs in the COPY procedure, so passing a string header in
A0 and A1 will work.
                             EDIT 361    FOR ALGOL
User's ALGOL program fails when overlaid,  but  works  fine  when  run
non-overlaid.  It runs out of memory for no apparent reason.
ALGOL's FUNCT. memory management routines improperly  handled  memory.
Free  blocks  were  not  returned to the heap table, thus causing free
space fragmentation.  OVRLAY's repeated attempts to get  memory  at  a
specific address failed.  Eventually, OVRLAY moved the symbol table up
so far that it ran out of memory, causing the fatal error.
Correct  ALGOL's  FUNCT.  memory  managment  routines.   Allocate  and
deallocate memory blocks properly and do not fragment blocks.