General
Make-up
of
an
Object
Tape
Making
Corrections to
FORTRAN System Tapes
Duplicating the Processor
and
Subroutine Tapes
Description
of
the
Program
The
first five records
in
the
object
tape
have
been
punched
during
the
initializa-
tion phase,
and
contain a short loading routine which loads
the
multiply-add
tables
and
the
program
loader.
The
records following are
the
compiled instruc-
tions which
are
concluded
by
a record containing only
the
constant 00009990.
The
first loading routine branches to
the
program
loader
which
loads
the
com-
piled
instructions
in
proper
order into storage to form
the
object program. Im-
mediately following
the
compiled instructions is a record consisting of
three
5-
digit fields
and
a 50-digit field
that
indicates
which
subroutines
are
being
used,
followed
by
a 5-digit field
that
indicates
the
memory capacity.
The
symbol
table
follows
(punched
in
60-character records) as it appears
at
the
end
of compila-
tion,
and
is
read
into storage by
the
program
loader.
The
symbol
table
is ex-
panded
as
it
is
loaded
to allow for any dimensioned variables
which
were
used in
the
source program.
The
next section contains any relocatable subroutines
(type
3)
which
may
have
been
called for
when
the
object program was
produced.
The
records following
the
relocatable subroutines modify a loading routine
to
read
in a record containing
the
arithmetic
and
input/output
subroutines
(type
1).
The
last records in
the
object tape modify
the
routine to cause
it
to
read
in
and
type
out
the
message which calls for
the
loading of data,
and
to come to a
halt
before starting
the
execution of the object program. See
the
note
at
the
end
of
the
description of
the
general make-up of
the
object deck.
The
loading routine used to
read
in
the
compiler
program
requires two records
to load information into storage.
The
first record is in
the
form
LLLLL
HHHHH
where
the
Ls represent the low position into which
the
data
is to
be
read,
and
the
Hs
represent
the
location immediately following
the
last location to
be
used.
The
records following are
read
into storage
in
accordance
with
the
addresses
given. Corrections to
the
compiler
program
are
preparep
in
the
form
required
by
the
compiler loading routine,
punched
in
paper
tape,
and
may
be
inserted
in
the
compiler
tape
by
using the following method. -
l.
Duplicate
the
processor
tape
by
means of
the
special duplicating program,
then
single instruction execute
the
machine
toward
the
end
of
the
original
tape
until
the
third record from
the
end
has
been
read
into storage. Re-
move
the
processor
tape
from
the
tape
reader.
2.
Mount
the
correction
tape
and
continue duplication until
the
last record
has
been
read,
then
remove
it
from
the
reader.
3.
Replace
the
processor tape
at
the
start
of
the
second record from
the
end
and
complete the duplicating process.
The
duplicated
tape
will contain
the
new
information desired,
and
will cause
the
machine
to execute
the
normal
halt
immediately after loading.
The
purpose
of this program is to duplicate
the
FORTRAN
processor
and
sub-
routine tapes for use on
the
basic 1620 system (20,000 storage positions), or to
duplicate
and
alter
the
processor
tape
for use on 1620 systems
that
utilize addi-
tional memory (40,000 or 60,000 storage positions). Program switches 1
and
2
control
the
setup for
the
tape
to
be
duplicated
and
also control
whether
alterations
are
to
be
made
to the tape. -Since
the
processor
tape
contains some
alphabetic
records, a special test is
incorporated
in
the
duplicating
program
to
Analysis
of
the
FORTRAN
Program 69