XDS 9300 User manual

Pri
ce:
$3.00
MONARCH
REFERENCE
MANUAL
for
900
SERIES/9300
COMPUTERS
90
05
66D
December 1969
©
1964,1965,1966,1967,1968,1969,
Xerox Data Systems,
Inc.
Printed in
U.SA

REVISION
This
publication,
XDS
90 05 66D, is a minor revision of
the
MONARCH Reference
Manual,
90 05 66C (dated
July
1967). A
change
in
text
from
that
of
the
previous manual
is
indi-
cated
by a
vertical
line in the margin of the
page.
RELATED
PUBLICATIONS
Title
XDS
92 Integrated Computer Reference Manual
XDS
910 Computer Reference Manual
XDS
920 Computer Reference Manual
XDS
925 Computer Reference Manual
XDS
930 Computer Reference ManuaI
XDS
940 Computer Reference Manual
XDS
9300 Computer Reference Manual
XDS
900
Series/9300
Monarch Technical Mtanual
XDS
900 Series
FORTRAN
II
Reference Mtanual
XDS
900 Series FORTRAN II
Operations
Manual
XDS
900
Series/9300
ALGOL
60
Reference Manual
XDS
900
Series/9300
Symbol and Meta-Symbol Reference Manual
XDS
900
Series/9300
Project Management System Reference Manual
XDS
900
Series/9300
Extended
Project
Mtanagement System
Reference Manual
XDS
900
Series/9300
Sort/Merge
Reference Manual
XDS
900
Series/9300
Business Language Reference Manual
XDS
900
Series/9300
Manage Reference Manual
XDS
900
Series/9300/Sigma
ADAPT
Part Programming Reference
Manual
NOTICE
Publ
ication
No.
9005
05
900008
900009
900099
900064
900640
900050
90 06 16
900003
9005
87
900699
9005
06
90 08 18
90 15 04
9009
97
90
1022
90
1046
90
1045
rhe
s~cifjcation~
~f
the
~oftwo.re
sy~tem
.described
in
this
p~~lication
are
subject
to
change
without
notice.
The
availability
or
performance
of
some
features
may
iepena
on a
specIfIc
confIguration
or
equIpment
such
as
addItIonal
tape
units
or
larger
memory. Customers
should
consult
their
XDS
sales
representative
for
details.
ii

CONTENTS
l.
INTRODUCTION Termination
of
a
Run
17
Loader
17
Operating Environment 1 Unit Assignment Requirements
18
MONARCH 1 Storage
All
ocation
18
META-SYMBOL/SYMBOL 2
The
Loading Process
19
FORTRAN
II
2 Automatic Selective Loading
from
the
ALGOL 2 MONARCH library
19
Functions
of
MONARCH 2
How
MONARCH Performs
Its
Functions 2
4.
PROGRAMMING
FOR
MONARCH
21
Sal ient MONARCH Features 3
Octal
Dump
Routine
21
2. MONARCH CONTROL
MESSAGES
AND
Symbol
Table Typeout Routine
21
FUNCTIONS 4
Octal
Correction Routine
21
Loader Routine
22
Syntax of Control Messages 4 System Update Routine
23
Control Message Parameters 4
The
Update Control Message
23
Numeric Parameters 4 Control Iing an Update
Run
24
Literal Parameters 5
COpy
Messages
25
Symbolic Parameters 5 Contents of a Typical MONARCH System
Control Message Formats 5 Tape
27
System Control 6 System Tape
27
JOB 6 Examples
28
ENDJOB 6 Error
Hal
ts
during Update
Runs
29
ASSIGN (ONLINE) 6
Processor Control 7
5.
PREPARING
PROGRAM
DECKS
30
METAXXXX
7
MET
A-SYMBOL Assembiy and Execution
30
SYMBOL
8
FORTRAN
Compi
lation and Execution
31
FORTRAN
8 ALGOL Compilation and Execution
34
RTFTRAN
8
ALGOL 9
6.
OPERATING
PROCEDURES
36
Input Control 9 Loading the MONARCH System
36
FILLSYS
..
____
9 Furnishing Control Messages
36
LOAD
9 Program
Hal
ts
and Recovery Procedures
38
FORTLOAD
10
System
Output
38
RTFTLOAD
11
MONARCH Loader's
Symbol
Table
38
FORTLINK
11
FORTRAN
Loader's
Output
38
ALGOLOAD 11
Utility Functions
11
APPENDIXES
C 11
A.
MONARCH UNIT ASSIGNMENT
TABLE
40
SET
12
B.
MONARCH
SYSTEM
TAPE
43
LABEL
12
C.
LOADER
OPERATIONS
49
DISPLA
Y
(S
HOW)
12
D.
UPDATING
META-SYMBOL
ON
MONARCH
POSITION
13
TAPES
54
REWIND
13
E.
FORTRAN
LIN
KAGE
55
S
KIPFILE
13
F.
XDS
STANDARD
BINARY
LANGUAGE
60
S
KIPREC
13
G.
PROCESSOR
DIAGNOSTICS
66
BACKFILE
14
H.
RAD
MONARCH
70
BACKREC
14
I.
XDS
CHARACTER
CODES
74
WEOF
14
J.
FORTRAN
II
RUN-TIME MAGNETIC
TAPE
BOOTLOAD
14
OPERATIONS
75
CARDTAPE
15
INDEX
79
EOF
15
ILLUSTRATIONS
System Maintenance
15
UPDATE
15
l.
MONARCH Program Halts and Recovery
Procedures
37
3.
THE
MONARCH
SYSTEM
16
2.
FORTRAN
Loader Output
'lO
'"',
Monitor
16
3.
MONARCH Loader
Symbol
Table 39
Standard System Routines
16
4.
FORTRAN
Run-time
Errors
76
iii

1.
INTRODUCTION
MONARCH
is
a
batch-oriented
operating
system
that
allows
batched
assemblies,
compilations,
and
executions.
The MONARCH system is
available
to
users of XDS
9300
Computers
and
of
XDS
900
Series
Computers,
and
offers
three
distinct
advantages:
1.
Reduced
operator
intervention
that
increases
oper-
ational
reliability.
2.
All
control
messages
recorded
at
the
typewriter
for
visual
verification
and
permanent
logging.
3.
Batch processing
capabi
I
ity
that
reduces
throughput
time.
MONARCH allows
batch
processing
to
proceed
without
the
operator
having
to
set up
processing
parameters
or
select
input/output
devices.
Use
of
appropriate
control
cards
preceding
the
program permits intermixing
and
uninterrupted
processing of assemblies,
compilations,
and
executions.
Printouts
of
control
and error messages
are
made
available
during
processing,
and
the
oper-
ator
is
concerned
only
with
setting
up of
tapes,
ioad-
ing of
cards,
etc.
If
a program fai
Is,
the
operator
inspects
the
hard
copy
of
control
information
and
makes necessary
adjustments
in
input/output
assign-
ments,
tape
designations,
etc.
A
certain
portion
of
MONARCH -
called
the
Resident-
remains in main memory
at
all
times. The
resident
in-
cludes
the
MONARCH Bootstrap (to load
the
MONARCH
operating
system),
the
Unit
Assignment
Table
(UAT),
error
and
job
switches,
memory dump
routines,
and
for
RAD
MONARCH,
the
RAD
file
Management
Pack-
age.
The MONARCH
operating
system does
not
re-
main
in
core
during
the
execution
of
programs;
only
the
resident portion is
there.
MONARCH
is
reloaded
as
needed
between
jobs.
The major portion
of
the
MONARCH
operating
system
is
the
Monitor (see
Section
3).
The
monitor
accepts
con-
trol information from many
input
media,
assigns
periph-
eral
equipment
as
requested,
and
loads and
executes
specified
standard system
routines.
The control
mes-
sages must
precede
the
program to be processed. In this
manner,
batch
processing
proceeds
free
from
operator
intervention
and may
involve
the
consecutive
processing
of
programs from
different
media.
During all
operations,
a
portion
of
MONARCH
resident
in main memory
retains
a record
of
input/output
assign-
ments and
contains
the
bootstrap. When
called,
the
bootstrap
loads a short program (Bootstrap Loader)
which
in turn loads
the
MONARCH
loader.
The MONARCH
loader
can
bring
any
of
the
following routines
into
core
from
the
system
tape:
1.
The
META-SYMBOL Assembler (900 Series only).
2.
The
SYMBOL Assembler.
3.
The
META-SYMBOL
Loader(loads
binary
object
pro-
grams
produced
by
MET
A-SYMBOL
and
SYMBOL).
4.
The
FORTRAN
II
Compiler
(900 Series only).
5.
The
FORTRAN Loader
(loads
object
program
pro-
duced
by
the
FORTRAN compiler, necessary
sub-
routines
from the FORTRAN Library,
and
the
FORTRAN Run-Time
package
(900
Series
only).
6.
The
ALGOL
Compiler.
7.
The
ALGOL
Loader (loads
object
programs
produced
by
ALGOL).
8.
The
Update
Routine (allows
modifications
and
up-
dating
of
the
MONARCH
system
tape).
9.
The SYSGEN Routine
(copies
a
RAD
MONARCH
system
tape
onto
the
RAD).
The
library
and
utility
routines,
provided with
the
system
or
added
by
the
user
to
the
system
tape,
are
also
brought
into
core
by
the
loader.
In
the
remainder
of
this
document,
the
phrase "system
tape
ll
refers
to
the
medium on which
the
MONARCH
system is
stored:
a
magnetic
tape
for
TAPE
MONARCH,
or
a
RAD
File for
RAD
MONARCH.
OPERATING
ENVIRONMENTS
The
operating
environment
in
wh
ich
th
is system is
to
func-
tion
is
given
below.
The
appropriate
interrupt
and
data
transmission
facilities
are
assumed.
MONARCH
The MONARCH system
requires
for its use
the
following
minimum
configuration
of
computer
equipment:
1.
An
XDS
9300
Computer
or
an
XDS
900
Series
Com-
puter
system
with
at
I
east
8192 words of
core
memory.

2.
3.
A
console
typewriter
to
be
used by
the
system to
communicate
with
the
console
operator.
T
tl'
. .
wo
or more
on-
me
magnetic
tape
units.
The
sys-
tem
tape
is on a
magnetic
tape
unit.
4.
For
RAD
MONARCH,
one
RAD
File.
5.
One
or more
of
the
following:
card
reader/punch
paper
tape
reader/punch
Iine
printer
MET
A-SYMBOL/SYMBOL
META-SYMBOL requires
12,288
words
of
core
memory;
its
requirements
for
input/output
devices
are
the
same
as
those for MONARCH. SYMBOL
operates
on the
minimum
configuration
required
by
MONARCH.
If
both
the
encoded
and
symbolic
input
are
on
the same
device,
an
additional
magnetic
tape
or
MAGPAK
is
re-
quired
by META-SYMBOL. The same
requirement
is
true
if
either
the
symbol ic
or
encoded
input
is
to
be
read
from
magnetic
tape.
FORTRAN II
FORTRAN
II
operates
on the minimum
configuration
re-
quired
by
MONARCH.
ALGOL
In
addition
to
the
minimum MONARCH
configuration,
ALGOL requires
one
output
device;
that
is, ALGOL
must
have
a
device
for
binary
output
and
one
for
output
Iisting (a Iine
printer).
FUNCTIONS
OF
MONARCH
The
operating
system
is
a basic program
execution
pack-
age
which
provides
the
following
functions:
1. Loading
and
execution
of
standard
system routines.
For
example:
a.
FORTRAN
compilation.
b. META-SYMBOL assembly.
c.
Punched
card-to-magnetic
tape
conversion.
d.
MONARCH system
updating.
tA
MAGPAK may
be
used
in
place
of two
magnetic
tape
units.
2
2.
Loading
and
execution
of
previously
compiled
or
assembled programs for
checkout
or
production
runs.
For
example:
a.
Run
a previously
compiled
ALGOL program.
b.
Run
a program consisting
of
several
previously
compiled
subprograms
and
a previously
com-
piled
FORTRAN main program.
3. Combined assembly,
loading,
and
execution
of
pro-
grams for
checkout
or
production
runs. For
example:
a.
Compile-and-go
execution
of
FORTRAN
pro-
grams.
b.
Assemble-and-go
execution
of
symbolic
pro-
grams.
4.
Combinations
of
the
above
functions.
In
the
follow-
ing
examples
the
phrases
"job
stack"
and
"batched
job
stack"
refer
to
the
collection
of
control
infor-
mation, programs,
and
data
which
are
to
be
pro-
cessed
under
control
of
the
MONARCH monitor
routine.
For
example:
a.
A
series
of
META-SYMBOL assemblies.
b. Several META-SYMBOL assemblies
intermixed
with
one
or more META-SYMBOL
object
pro-
grams
to
be
assembled
and
then
executed.
c.
A mixed
batch
requiring
that
any
or
all
MONARCH
functions
be
carried
out
in
an
arbitrary
sequence
determined
by
their
order
in
the
batched
job
stack.
5. Loading
of
standard
input/output
routines
prior
to
loading
and
executing
previously assembled
pro-
grams, so
that
these
standard
routines
can
be
exe-
cuted
upon
request
from
the
program
being
run. For
example:
a.
Loading
standard
input/output
routines from
the
system
tape.
b. Loading a conversion
routine
or
trigonometric
function
routine
from
the
MONARCH
library.
HOW
MONARCH
PERFORMS
ITS
FUNCTIONS
The MONARCH
operating
system performs its functions
between
jobs
and
does not
exerc
ise
control
over
the
exe-
cution
of a program
once
that
program has
been
loaded
and
control
has
been
transferred
to
it.
The
functions
are
indicated
to MONARCH
via
control
messages.
Upon
request,
MONARCH loads a program and
then
re-
Iinquishes
control
of
the
computer
and
its
associated
pe-
ripheral
equipment
to
the
program. The
only
possible
way
MONARCH
can
regain
control
of
the
computer
is
if
MONARCH
is
reloaded
from the system
tape.
This may

be
done
manually
by
the
console
operator
or
under
pro-
gram control
by
the
program being
executed.
SALIENT
MONARCH
FEATURES
The sal
ient
features
of
MONARCH
are:
1.
The system minimizes
the
amount
of manual
interven-
tion
required
to
execute
a succession
of
independent
or
related
programs on
the
computer.
2.
Core
memory requirements for
the
monitor
routine
are
minimized during program
execution;
that
is,
the
monitor performs its functions
between
program
executions,
and
MONARCH holds
only
those
in-
structions
and
data
required
for
continuity
of
oper-
ation
during program
execution.
.
3.
The
amount
of
control information
that
must be
furnished
to
the
monitor and
the
system routines
is
held
to
a minimum.
4.
The
control
information for
all
system functions
is
presented
in a
consistent
and
straightforward
manner.
5.
Insertion
and
deletion
of
routines from the system
are
accompl
ished
via
a simple
update
routine.
6.
Routines
to
be
added
to
the
system
are
introduced
in
the
standard
format used for assembly program
output.
That is, al most
any
program which
can
be
assembled by SYMBOL or META-SYMBOL
can
be
incorporated
into
this
operating
system
as
a
stan-
dard
system routine.
3

2.
MONARCH
CONTROL
MESSAGES
AND
FUNCTIONS
When
the
MONARCH system
is
loaded,
the
monitor
takes
control
of
the
computer
and
obtains
the
first item
of
control
information from
the
console
typewriter.
This
item
may be
any
legal control message. With a C
con-
frol message,
the
operator
may
specify
that
future
con-
trol messages
are
to
be
obtained
from
other
input
media.
Control messages may be
entered
through
the
following
input
media:
console
typewriter
punched
cards
via
an
on-I
ine
card
reader
punched
paper
tape
via
a
paper
tape
reader
magnetic
tape
via
a
magnetic
tape
unit
(other
than
the
one
on
which
the
system
tape
is
mounted)
When
the
monitor
obtains
a
control
message from a
medi-
um
other
than
the
typewriter,
it
types
the
message
be-
fore
executing
the function req
uested.
(The
operator
may
direct
the
monitor
to
print
the
control
message on
an
on-line
printer. See
"Operating
Procedures,"
Sec-
tion
6.) In th
is
way
the monitor informs
the
console
op-
erator
of
the
functions being performed
under
its
control
and
maintains a
written
record
of such
functions.
The
monitor
tells
the
operator
that
a
given
function
is
com-
pleted
by typing
the
next
control
message or by
request-
ing the
next
one from the
typewriter.
SYNTAX
OF
CONTROL
MESSAGES
Regardless
of
which
device
the
monitor
accesses
for
con-
trol
information,
the
format of
the
messages
is
the
same:
~f.
or
~fI\P1'
P2'
•••
,Pi·
/:::,.
(1
character)
indicates
the
beginning
of
a message.
f
(1
to
8
alphanumeric
characters)
is
a mnemonic
con-
trol
functi
on
code.
4
indicates
a
space.
These symbols
are
used
to
indi-
cate
the
minimum number
of
spaces
which
must
sep-
arate
the
function
code
and
the
first
parameter.
(1
sis
24)
is
a
symbolic,
numeric,
or
literal
para-
meter
that
provides
necessary
control
information
re
lated
to
the
control
function
(f). For
example
I a
request
for
the
system
loader
to
load
a program
must
indicate
the
intitial
load
relocation
bias for
the
program
that
is
to
be
loaded.
A maximum
of
24
parameters
may
be
specified
in
one
control
message.
A
separator.
Acceptable
separators
are
,
=><$[
J*/()/\I@
(1
character)
indicates
the
log
ical
end
of
message.
The
physical
end
of
message is
indicated
by
the
end
of
record
in
the
case
of
magnetic
tape
and
cards
or
by
a
carriage
return
in
the
case
of
paper
tape
and
typewriter.
The
logical
end
of
message is
required
only
when
comments
are
included.
Regardless
of
the
length
of
the
record
containing
a
con-
trol message,
the
routine
that
scans
control
messages
ex-
amines
only
the
first
72
characters
(18 words)
of
the
record.
Therefore,
the
period
indicating
the
end
of
the
message must
occur
prior
to
the
73rd
character
of
the
record.
The first
character
of
a
control
message is a
delta
(~).
This
character
and
the
function
code
may
be
contiguous
or
may
be
separated
by
one
or
more
spaces.
When
the
function
does
not
require
a
parameter
list,
the
function
code
is
followed by a
period;
otherwise,
a
space
sepa-
rates
the
parameter
Iist from
the
function
code.
Various
control
messages
require
different
numbers
of
parameters.
If
more
than
one
parameter
is
required,
all
but
the
last must
be
followed by a
separator;
the
last
one
is
followed by a
period.
CONTROL
MESSAGE
PARAMETERS
The monitor
converts
parameters
in a
MO
NARC H
control
message into a
standard
internal
form. Except for
literals
(see
below),
it
represents
parameters
internally
as
single-
precision,
24-bit,
binary
values.
Hence,
the
"value"
of
a
parameter
is
its
internal
representation
as a
binary
quantity
or
bit
pattern,
and
it
is
the
"value"
of
a
para-
meter
that
is
ultimately
examined
by
the
subroutine
in
the
monitor
which
processes
the
specific
function
code.
Th
is
method
of
parameter
conversion
usually
allows many
ways
of
representing
a
given
value
externally.
For
ex-
ample,
the
control
message
parameters
'OOOA'
(literal
parameter)
and MTl W (symbolic
parameter)
have
the
fol-
lowing
internal
representations
or
values:
'OooA' =00000021
MTlW
= 00203611
which
cou
Id
be
entered
as
numeric
parameters.
NUMERIC
PARAMETERS
A numeric
parameter
may
be
written
as:
1. An
octal
integer,
consisting
of
up to
nine
octal
dig-
its,
the
first
of
which
must
be
zero.
An
octal
in-
teger
may
be
preceded
by
an
algebraic
sign:
047,
+062,
-0,
0, 077777777,
-032154767

2. A
decimal
integer,
consisting
of
up to
eight
deci-
mal
digits
the
first
of
which must not
be
zero.
A
decimal
integer
may
be'
preceded
by
an
algebraic
sign:
9, +532,
-0,
+21657899,
-31579988
The first
digit
of
an
octal
integer
must
be
zero
in
order
for MONARCH to distinguish
it
from
a
decimal
integer.
Unsigned
octal
parameters
must
have
values
less
than
224; signed
octal
parameters
and
all
dec
imal
parameters
must
be
less than 223.
If
the
number
of
digits
in a
num-
ber
exceeds
the
appl
icable
Iimit,
the
least
significant
digits
are
truncated.
Regard less
of
the
form used,
the
parameter
is
represented
internally
as a
single-precision,
signed,
binary
integer.
LITERAL
PARAMETERS
A I
iteral
parameter
consists
of
up to
eight
alphanumeric
characters
enclosed
in
single
quotation
marks (SDS
inter-
nal
code
of
14). t Any
legal
character
(see
Appendix
H)
except
a
quotation
mark may
be
written
as a
literal:
1. A
single-precision
Hteral
consists
of
up to 4
charac-
ters:
2.
A
double-prec
ision I
iteral
consists
of
up
to
8
char-
acters:
A
literal
parameter
is
represented
internally
as a
left-
justified string
of
internal
character
codes
(six
bits
each).
A
single-precision
literal
isstored
in
one
computer
word.
A
double-precision
I
iteral
is stored in two words:
I
ABC
DEFGH' is stored in a
and
a + 1 as
(a) = 21222324
(a+1) = 25262730
Spaces
(internal
code
of
60)
are
used to fill
any
unspec-
ified
character
positions. For
example:
'ABC '
is
represented
internally
as
21222360
I
ABC
DEI
is
represented
internally
as
21222324
25606060
tThe
single
quotation
mark
is
not
present
on the
type-
writer; however, its
internal
code
(14)
is
the
same as
that
of
the
typewriter
symbol @ (upper
case
8).
There-
fore,
whenever
input
is from
the
typewriter,
the
symbol
@ must
be
used in
place
of
the
sing Ie
quotation
mark.
Double-prec
ision I
iterals
are
frequently
used to
desig-
nate
program names for
MONARCH
search
functions.
(See LOAD
control
message.)
SYMBOLIC
PARAMETERS
Symbolic
parameters
are
symbol
ic
representations
of
par-
ameters
associated
with many
of
the
control
messages
ex-
plained
later
in this
section.
Symbolic
parameters
consist
of
up
to
four
characters,
the
first
of
which must
be
alphabetic
and
the
remaining
either
alphabetic
or
numeric.
Each symbolic
parameter
has a
predetermined
value
(24 bits)
which
is stored in
MON-
ARCH's
table
of
symbolic
parameters.
Use
of
a symbol
not
defined
in this
table
causes
the
control
message in
which
the
undefined
symbol
appeared
to
be
ignored
and
an
error
message to
be
typed.
A
octal
parameter
with
the
same
value
may
be
substi-
tuted
for
any
symbol ic
parameter
in a
control
message.
Listed
below
are
the
symbol ic
parameters
used to specify
input/output
devices
to
the
MONARCH
system.
In
this
list, h
specifies
the
channel
and
is
actually
written
as
W
or
Y for 900 Series Computers
or
A,
B,
C,
or D for
9300
Computers.
Throughout this
manual,
references
are
made
to the "W"
and
"Y" buffers; users
of
the
9300
Computer
shou
Id
substitute
the
appropriate
channel
letters
in
these
places.
If h is
omitted
from a
parameter,
channel
W (or
A)
is
assumed. The n
specifies
the
unit
number.
Parameter
Definition
CR
designates
the
card
reader
where
there
is
only
one.
CRnh
designates
card
reader
n
on
channel
h.
CPnh
designates
card
punch n on
channel
h.
PRnh
designates
paper
tape
reader
n on
channel
h.
PPnh
designates
paper
tape
punch n on
channel
h.
TV
designates
the
console
typewriter
(i.
e.,
typewriter
1 on
channel
W).
MTnh
designates
magnetic
tape
unit
n on
channel
h.
DFnh
designates
RAD
Fi
Ie n on
channel
h.
LP
designates
the
I
ine
printer
(i.
e.,
line
printer
1 on
channel
W).
S
designates
the
system
tape
(i.
e.
,
magnetic
tape
unit
0 on
channel
W).
CONTROL
MESSAGE
FORMATS
The user
directs
the
operation
of
the
MONARCH
system
via
control
messages
which
may
be
input
from
the
type-
writer,
punched
paper
tape,
or
punched
cards.
Most
frequently,
the
control
messages
are
on
punched
cards
preceding
the
user's
input
card
decks.
5

System
Control
JOB
ENDJOB
ASSIGN
(ONLINE)
Processor
Control
METAXXXXt
SYMBOL
FORTRAN
RTFTRAN
ALGOL
Input
Control
FILLSYS
LOAD
FORTLOAD
RTFTLOAD
FORTLINK
ALGOLOAD
Utility
Functions
C
SET
LABEL
DISPLAY (SHOW)
POSITION
REWIND
SKIPFILE
SKIPREC
BACKFILE
BACKREC
WE
OF
BOOTLOAD
CARDTAPE
EOF
System
Maintenance
UPDATE
SYSTEM
CONTROL
JOB
The
JOB
control
message
specifies
the
system
is
to
be
in
11
job mode
ll
•
~JOB.
When
the
system is set to job
mode,
it
resets
the
proces-
sor
error
switch.
If
an
error
occurs
while
a processor
(such as FORTRAN or META-SYMBOL) is
being
exe-
cuted,
the
processor
error
switch
is
set.
Then, if
the
operation
is
a
load-and-go
(i.
e.,
compile-and-execute
or
assembl
e-and-execute),
the
IIload"
function
is
not
honored
because
of
the
processor
error.
If
no
error
oc-
curs
during
such a
load-and-go
operation,
the
IIload
ll
function
is
honored.
The MONARCH system remains in job mode until
an
ENDJOB
control
message
is
encountered.
Therefore,
whenever
a job
is
preceded
by a
JOB
message, it should
be
followed
by
an
E
NDJ
0 B
(see
below)
as
a
courtesy
to
the
next
user
who
may not wish to assemble
(compile)
his program
in
job
mode.
END
JOB
This
control
message
spec
ifies
that
the
system
is
not
in
job mode.
~ENDJOB
tXXXX
indicates
the
name
of
a set of system PROCs
that
will
be
used
to
interpret
the
program mnemonics
during
the
META-SYMBOL assembly
(e.
g.,
ME
TA92
0,
MET
A910,
MET
A9300,
METASPEC,
etc.).
META91
0
wi II
assemble
on
any
machine
and
will
produce
binary
output
for
910.
The
set
of
PROCs is a
~
2
record
within
the
scope
of
the
META-SYMBOL
logical
file
(see
IISys-
tem
Update
Routine
ll
in
Section
4 for
an
explanation
of
62
records).
6
When
an
E
NDJOB
control
message
is
received,
MON-
ARCH resets
the
processor
error
switch
and
terminates
job mode. If a processor
is
being
executed
in a
load-
and-go
operation
not
in job mode, MONARCH wi
II
honor
the
IIload
ll
function
even
if
processor
errors
have
occurred.
The system
wi
II
not return
to
job mode
unti
I
it
receives
a
JOB
control
message.
ASSIGN
ASSIG N (or
ONLINE)
enables
the
user
ON
LINE
to
specify
the
input
and
output
media to
be
used
during
the
current
job.
~ASSIG
N
L=P
l'
L=P
2'
..•
,
L=P
9'
~ONLINE
L=P
1,L=P2
,·
..
,L=P
9.
Lis
a system
label.
P is a
symbolic
parameter
designating
the
specific
device
(see
Symbol
ic
Parameters).
The
labels
for
the
standard
unit
assignments
are:
Label
Reference
SI
Symbolic
Input
SO
Symbolic
Output
BI
Binary
Input
BO Binary
Output
EI
Encoded
Input
EO
Encoded
Output
LO List
Output
UI
Update
Input
X1 System
Scratch
X2t
System
Intermediate
Output
Scratch
X3
System
Scratch
(magnetic
tape)
S System
(magnetic
tape)
Labels for Logical
unit
assignments
are:
Label
LO
L1
L2
L3
L4
L5
L6
L7
LCR
LCP
LLP
Reference
Magnetic
Tape
Logical
Unit
0
Magnetic
Tape
Logical
Unit
1
Magnetic
Tape
Logical
Unit
2
Magnetic
Tape
Logical
Unit
3
Magnetic
Tape
Logical
Unit
4
Magnetic
Tape
Logical
Unit
5
Magnetic
Tape
Logical
Unit
6
Magnetic
Tape
Logical
Unit
7
Card
Reader
Card
Punch
Line
Printer
Note:
Ln
may
be
assigned
to
any
physical
tape
unit;
i.
e.,
LO=MT2W, L2=MT7W,
etc.
The
logical
unit
assignments
are
used in
the
Business
Lan-
guage
and
in FORTRAN
II
RAD
MONARCH to
permit
re-
assignment
of
unit
numbers.
tX2 must be assigned to
magnetic
tape
unit
2 (MT2)
under
MAGPAK
environment
when
using META-SYMBOL.

At
least
one
pair
of
parameters
must
be
given,
and
a
maxi-
mum
of
nine
pairs
is
allowed
per
control
message. The
valueofthe
first
parameter
must
bea
label
specifying
a
unit
assignment
entry;
e.
g.,
SI,
LO,
etc.
The
value
of
the
second
parameter
must
be
a
legal
peripheral
device
designation
on
an
existing
channel;
e.
g.,
PR1W, MT3Y,
etc.
The
symbolic
parameter
associated
with
the
periph-
eral
device
should
be
consistent
with
the
flow
of
infor-
mation;
that
is, it would
be
illegal
to
assign BI=CP1W
(binary
input
to be
entered
from
the
card
punch).
Once
a
unit
assignment
has
been
made,
it
remains
in
effect
until
a
new
assignment
for
that
label
is
made.
When
a
logical
tape
is
assigned
to
the
RAD
for
execution
of
a FORTRAN program,
it
should
be
assigned
to
Xl
or
X2,
where
Xl
or
X2 has
been
assigned
to
the
RAD. This
permits
up
to
two
such
files
to
be
simultaneously
active.
Examples:
.6ASSIGN
BI=CR1W, BO=CP1W.
This message assigns
card
reader
1 on
the
W
buffer
as
the
binary
input
device
and
card
punch
1
on
the
W
buf-
fer as
the
binary
output
device.
.60NLINE
LCR=CR1W, LLP=LP1W, L2=MT1W.
This message assigns
card
reader
1 on
the
W
buffer
as
the
card
input
device,
printer
1
on
the
W
buffer
as
the
on-line
printer,
and a
second
magnetic
tape
(L2)
as
magnetic
tape
physical
unit
1 on
the
W
buffer.
This
ONLINE
statement
assigns LCR,
LLP,
and
L2
in
BAT
(Business
Language
Assignment
Table,
which
is
de-
scribed
in
Appendix
A).
Note
that
magnetic
tape
units
are
numbered
0
through
7;
all
other
devices
are
numbered
from
1.
.6
ASSIGN
BI=CR1W, S=MTOW, LCR=CR1W•
.6ASSIGN
LLP=LP1W, L2=MT1W.
These
messages assign: (1)
card
reader
1
on
the
W
buffer
as
both
the
binary
input
device
and
the
card
reader
for
a Business
Language
program; (2)
magnetic
tape
unit
0
on
the
W
buffer
as
the
system
tape;
(3) I
ine
printer
1 on
the
W
buffer
as
the
on-I
ine
printer
for a Business
Lan-
guage
program;
and
(4)
the
magnetic
tape
physical
unit
1 on
the
W
buffer
as
the
magnetic
tape
logical
unit
2
of
a Business
Language
program.
PROCESSOR
CONTROL
METAXXXX
(900
Series
only)
This
control
message
directs
MONARCH to
load
and
transfer
control
to
the
MET
A-SYMBOL assembly system•
.6METAXXXX P1, P
2'
C,
CONC,
EXCP,
SET.
XXXX
specifies
which
procedure-oriented
library
MONARCH
is to
load
prior
to
the
assembly.
Thus,
the
control
message may be
written
as:
.6l·AET
A920 for
920
procedure-oriented
library.
.6META910
for
910
procedure-oriented
library.
.6META9300
6METAB910 ]
6METAB920
for
9300
procedure-ori
ented
library
.
6METAB93H for
900
Series
special-purpose
pro-
cedure-oriented
I
ibrary
for
busi-
ness
data
processing.
The user may
provide
his own
procedure-oriented
I
ibrary
on
the
system
tape.
It
must
be
identified
by a
unique,
4-character
name.
That
name
isthen
used in
place
of
XXXX in
the
METAXXXX
control
message.
P1
specifies
type
of
input:
Parameter
SI
EI
Type
of
Input
Symbolic
Input
Encoded Input
P2
spec
i
fi
es
type
of
output:
Parameter
SO
EO
BO
LO
Type
of
Output
Symbol ic (Source)
Output
Encoded
Output
Binary
Output
List
Output
C
(optional)
specif
ies
that
cornpatibility mode
tiOnsla-
tion
of
symbolic
input
is
desired.
Use
of
this
param-
eter
enables
the
user to
translate
a SYMBOL-4
or
SYMBOL-8
source
program
into
META-SYMBOL
source
form.
CONC
(optional)
specifies
that
a
concordance
listing
t
is
to
be
produced
by
META-SYMBOL.
EXCP
(optional)
specifies
that
exceptions
are
to
bemade
to
the
concordance
I
isting
t as
designated
on
META-
SYMBOL
control
cards
INCLUDE
and
EXCLUDE.
If
EXCP is
present,
CONC
is
not
specified.
SET
(optional)
specifies
that
a
larger
table
should
be
re-
served
for use
by
the
META-SYMBOL
preassembler
to
accomplish
translation
of
standard
system
pro-
cedures
to
the
user's
program format. This
parame-
ter
is
not
necessary
when
the
control
message
is
META920, META910, or META9300,
but
should
be
used
with
a
call
for
the
XDS Business
Language.
SET
may
also
be
necessary
for
future
higher
order
lan-
guages
implemented
in META-SYMBOL.
tllConcordance
Iisting"
refers
to
a Iisting of
the
symbols
appearing
in
the
META-SYMBOL
source
program,
along
with
a
reference
to
the
instructions
in
which
the
symbols
appeared.
INCLUDE
control
cards
may
be
used
to
limit
concordance
listing
to
specific
symbols
only;
EXCLUDE
control
cards
enumerate
specific
symbols
which
are
to
be
omitted
from
the
concordance
listing.
7

The
parameters
may
be
listed
in
any
order.
One
input
and
one
output
specification
must
be
given.
Multiple
outputs
may
be
requested.
META-SYMBOL assumes
that
the
necessary
input/output
units
have
been
assigned
and
that
all
tape
units,
except
scratch
tapes,
are
correctly
positioned
before
MONARC
H
relinquishes
control
to
it.
Examples:
6ASSIGN
SI=CR, LO=LP, S=MTOW, X
l=MTlW.
6META920
SI,
LO.
This
message
sequence
requests
META-SYMBOL to
as-
semble
a
symbolic
source
program
and
produce
an
assem-
bly
listing
as
the
only
output.
6ASSIGN
S=MTOW,
SI=CR, BO=PP1W, LO=LP.
6ASSIGN
X1=MTlW.
6META9300
SI, BO, LO,
CONC.
This
sequence
requests
META-SYMBOL to
assemble
a
symbol ic
source
program from
cards
and
to
produce
a
binary
output
on
paper
tape
and
an
assembly
listing
and
concordance
listing
on
the
line
printer.
SYMBOL
The SYMBOL
control
message
directs
MO
NARC H to
load
and
transfer
control
to
the
SYMBOL
assembly system.
6SYMBOL
P1, P2.
specifies
which
mnemonic
table
is
to
be
used
dur-
ing
the
assembly:
Parameter
910
920
9300
Mnemonic
Table
910
920
9300
P2
specifies
output
data
from SYMBOL:
Parameter
BO
LO
Type
of
Output
Binary
Output
List
Output
The
parameters
may
appear
in
any
order.
Only
one
mnemonic
table
(P1) may
be
specified;
at
least
oneout-
put
spec
ification
parameter
(P2) must
be
present.
Sym-
bolic
input
is
assumed;
therefore,
SI
should
not
be
present
as
a
parameter,
but
must
be
ASSIGNed.
Under
MONARCH,
SYMBOL has no
initial
halt
to
ready
input,
in
contrast
to
previous
bootstrap
versions.
Therefore,
it
is
particularly
important
in
the
case
of
symbolic
input
from
the
paper
tape_
reader
(a
device
which
has no
device
ready
test)
that
the
paper
tape
be
ready
at
the
time
SYMBOL is
loaded.
Each SYMBOL
control
message shou
Id
be
preceded
by
an
ASSIGN
control
message,
establishing
the
desired
unit
assignments.
The
ASSIGN
card
is
indicative
of
device
only;
i.
e.,
it
supplants
the
typewriter
control
8
message
of
bootstrap
versions
and
causes
SYMBOL to
load
its own
preset
I/o
package.
Example:
MSSIGN
S=MTOW,
SI=CR, LO=LP.
MSSIGN
BO=PP1W,
Xl=MTlW.
6SYMBOL
9300,
LO, BO.
This
sequence
of
messages
requests
a SYMBOL assembly
from
cards,
using
the
9300
mnemonic
table.
The
output
from the assembly
is
to
be
a program
listing
on
the
line
printer
and
an
object
program on
punched
paper
tape.
FORTRAN
(900
Series
only)
This
control
message
causes
MONARCH
to
load
and
relinquish
control
to
the
FORTRAN
II
compi
ler.
6FORTRAN
P1, P2, P3•
P.
specify
type
of
input
and
output:
I
Parameter
SI
BO
LO
Type
of
Transmission
Symbolic
Input
Binary
Output
List
Output
Any
or
all
of
the
parameters
may
be
omitted.
Symbolic
input
is
always
assumed. The
presence
of
the
BO
param-
eter
causes
an
object
program to
be
generated.
The LO
parameter
causes
an
output
listing
to
be
produced.
If
no
I/O
unit
assignment
has
been
made
to the
BO
or LO
de-
vice,
that
parameter
is
ignored.
Examples:
6FORTRAN.
This
message
requests
FORTRAN
to
compile
a
source
pro-
gram; no Iisting
or
object
program is
produced;
only
the
program
allocation,
diagnostics,
and
any
erroneous
source
line(s)
will
be
listed.
6ASSIGN
S=MTOW,
SI=CR, LO=LP,
Xl=MT1W.
6FORTRAN
BO,
LO.
This
sequence
of
messages requests FORTRAN to
compile
a
source
program
read
from
cards
(SI
is
assumed
if
it
is
not
present)
and
to
produce
an
output
listing.
No
object
program is
produced
since
no BO
unit
assignment
was
made.
RTFTRAN
(900
Series
only)
This
control
message
causes
MONARCH
to
load
and
rei inquish
control
to
the
Real-time
FORTRAN II
compiler.
P.
specify
type
of
input
and
output
consistent
with
the
I .
format of
the
above
mentioned
FORTRAN
control
message.

ALGOL
The
ALGOL
control
message
causes
MONARCH
to
load
and
transfer
control
to
the
ALGOL
compiler.
P.
I
specify
the
input/output
devices
to
be
used
by
ALGOL.
Parameter
LS
LO
BO
Type
of
Transmission
List
Source
List
Object
Code
Binary
Output
The
parameters
may
appear
in
any
sequence,
and
any
or
all
may
be
omitted.
ALGOL
always
reads
source
in-
puts
from
the
device
previously
assigned
to
SI.
When
a I
isting
of
the
source
program
is
requested
(LS
param-
eter),
the
listing
is
produced
on
the
LO
device.
The
LO
device
must
be
a I
ine
printer.
When
requested
to
Iist
object
code
(LO
parameter),
ALGOL
produces
the
Iist on
the
LO
devi
ceo
The
BO
parameter
spec
ifies
that
ALGOL
is
to
produce
a
binary
object
program
on
the
BO
device.
If
no
output
device
i..s
specified
and
an
error
occurs
dur-
ing
compilation,
an
error
message
is
produced
on
the
console
typewriter.
Note:
ALGOL
must
have
a
scratch
tape
available
to
it
and
will
automatically
use
the
magnetic
tape
previously
assigned
to
Xl.
Example:
b.ASSIGN
S=MTOW, SI=CR, LO=LP, BO=PP1W.
b.ASSIGN
Xl=MT1W.
b.ALGOL
LS,
LO,
BO.
This
sequence
of
control
messages requests
the
ALGOL
compiler
to
read
a
source
program from
cards,
compile
it,
Iisting
the
object
and
source
programs on
the
line
printer,
and
output
the
binary
object
program on
punched
paper
tape.
The
magnetic
tape
unit
1 on
the
W
buffer
is
to
be
the
compiler's
scratch
tape.
~
ADAPTt
(900
Series
only)
No
parameters.
This
control
message
directs
MONARCH
to
load
and
transfer
tThe ADAPT
compiler
is
not
part
of
the
standard
MON-
ARCH system, but
is
avai
lable
on
request
for
the
tape
MONARCH
system
only.
When
the
ADAPT FORTRAN II
MONARCH
system
tape
is
generated,
only
the
following
programs should
be
incl
uded
on the system
tape:
1.
MONARCH
control
2.
I/O
handler
3.
FORTRAN
II
linking
system
4.
FORTRAN II
compiler
5.
FORTRAN
II
loader
6.
FORTRAN
II
library
7.
MONARCH
tape
update
routines
8.
SYSEND
control
to
the
ADAPT
numerical
control
compiler.
LINKZEROis
loaded
and
control
is
transferred
to
it.
This
in
turn
reads
the
next
control
record
which
must
contain
the
linknumberofthenext
linkto
be
executed
in
column
4.
Example:
b.ADAPT.
/\
/\/\
1
This message
sequence
loads
LINKZERO
which
in turn
loads
link
1
of
the
ADAPT
compiler.
Each link
there-
after
calls
the
next
link
until
compilation
is
terminated.
~
MANAGE
t
(900
Series
only)
No
parameters.
This
control
message
causes
MONARCH
to
load
and
transfer
control
to
the
MANAGE
executive
routine.
~
DICTIONA
t
(900
Series
only)
No
parameters.
This
control
message
is
used in
conjunction
with
MANAGE.
It
causes
control
to
be
transferred
from
the
Executive
routine
to
the
Dictionary
generator.
INPUT
CONTROL
FILLSYS
This
control
message
transfers
control
to
the
monitor's
bootstrap
routine
which
wi II
reload
the
MONARCH
system.
b.FILLSYS.
There
are
no
parameters.
The
message is
equivalent
to
executing
an
unconditional
branch
to
memory
location
OOODl.
LOAD
The
LOAD message
directs
the
MON-
ARCH
loader
to
load
one
or more
binary
object
programs.
b.LOAD P1
,P
2
,P
3.
is
the
load
relocation
bias,
expressed
as a
positive
octal
or
decimal
integer,
for
the
first
(or
only)
pro-
gram to
be
loaded.
For programs whose
load
ad-
dresses
and
data
words
are
not
relocatable
(i.
e.,
ab-
solute
programs),
the
load
relocation
bias
is
ignored.
is
the
loader
options
parameter.
The
options
are:
Parameter
Interpretation
STOP
Stop
after
each
program
is
loaded
(i. e. ,
after
each
end
record
is
read);
no
sym-
bol
table
output
and
no return to
the
routine
that
called
the
loader.
Octal
equivalent
of
the
symbol ic
parameter
STOP is
10000000.
tThe
MANAGE
system
is
not
part
of
the
standard
MON-
ARCH system, but
is
avai
lable
on
request
for
the
tape
MONARCH
system
only.
The
MANAGE
system
tape
must
be
generated
with
the
Dictionary
generator.
The
form
and
contents
of
th
is
tape
are
spec
iaI
ized
and
wi II
be
supplied
to
the
user
upon
request.
9

Parameter
Interpretation
GO
No
halt
after
processing
end
record
with
transfer
address; no symbol
table
output
and
no return to
the
routine
which
called
the
loader.
Octal
equiv-
alent
of
the
symbolic
parameter
GO
is 40000000.
TSTP
Same as STOP
except
that
the
loader's
symbol
table
is
output.
Octal
equiva-
I
ent
of
the
symbol ic
parameter
TSTP
is
20000001.
TGO
Same as
GO
except
that
the
loader's
symbol
table
is
output.
Octal
equiva-
lent
of
the
symbol ic
parameter
TGO
is
60000001.
If
the
loader
is
not
requested
to
output
the
symbol
table
and unsatisfied Programmed
Operator
refer-
ences
or
definitions
occur,
an error message and
the
unsatisfied
references
and/or
definitions
are
typed,
and
MONARCH
halts.
If
these
unsatisfied
refer-
ences/definitions
will not
affect
the
operation
of
the
program,
the
operator
can
clear
the
ha
It
and
the
program wi
II
be
executed.
Otherwise,
he
can
take
appropriate
action.
When
the
loader
is
re-
quested
to
output
the
symbol
table,
it
produces
the
table
on
the
line
printer
if Breakpoint 1
is
set
or on
the
typewriter
if Breakpoint 1
is
reset.
P3
is
an optional
parameter
that
is
interpreted
as a
program
identification
label
assumed
to
occur
in
characters
9 through 16 of a
level
1 MONARCH
ID
record on the
current
binary
input
unit
(see
Ap-
pendix
B for a
description
of
record formats).
At
least
one
(P
1)
and
three
parameters
at
most must
be
given
for
the
LOAD control message. When
parameter
P3 is
present,
its
value
is
converted
to
a
left
adjusted,
space-filled,
S-character
search
key. The monitor
causes records
to
be
read
from the
unit
assigned for
bi-
nary
input
(BO
until (1) a level 1 MONARCH
ID
record,
with
the
same name in
characters
9 through 16,
is
ob-
tained
or (2)
the
last
file
has
been
scanned
(i.
e.,
until
a
level
1 MONARCH
ID
record
with
"SYSEND",,"
in
characters
9 through 16 is
encountered).
In
the first
case
control
is
relinquished
tothe
MONARCH
loaderthat
pro-
cesses
the
input
asspecified
by
the
first two parameters.
In
the
second
instance,
a message
SEARCH
FOR SPECIFIED
ROUTINE
FAILED
is
typed,
and
the
next
MONARCH
control
message
is
requested.
A
detailed
description
of
the
MONARCH
loader
is
given
in
Section
3.
Prior
to
processing a
load
function,
the
monitor
interro-
gates
the
processor
errorswitch
and
the
job mode
switch
(see
JOB
control message for
an
explanation
ofthese
switches).
If
both switches
are
set,
the
requested
load
function
is
aborted.
An
appropriate
error
message (PROCESSOR
ERROR
...
) is
printed,
and
typewriter
1
on
the
W buffer
is
selected
for
input
of
a
control
message.
10
Examples:
~LOAD
010000,
STOP.
This message
causes
the
MONARCH
loader
to
load
one
or more programs, beginning
in
location
100ooS_ Input
is
from
the
current
BI
device,
and
the
loader
stops (halts)
after
each
program
is
loaded (i. e. ,
after
each
end record
is
read).
~LOAD
2048,
TSTP.
This message
causes
the
MONARCH
loader
to
load
one
or
more programs, beginning in
location
4000s
(204S1
0>.
Input
is
from
the
current
BI
device,
and
the
loader
halts
after
each
program
is
loaded
(i.
e.,
after
each
end
record
is
read).
After
loading
is
completed
and
prior to program
execution,
the
symbol
table
is
output.
~LOAD
0,
TGO,
'FILENAME'.
This message (input from cards) causes
the
MONARCH
loader
to find program FILENAME (as a
level
1
ID
record)
on
the
specified
BI
unit
and
to
load
the
program with 0
relocation
(i.
e.,
as
an
absolute
program). The
loader's
symbol
table
is
output
prior
to
program
execution.
If
in-
put
is
from
the
typewriter,
this message
would
appear
as
~LOAD
0,
TGO,@FILENAME@.
(See discussion
on
II
Literal Parameters.
")
~LOAD
GO.
This message forces a load
relocation
bias
of
0 and may
be
used to load
absolute
programs.
FORTLOAD
(900
Series
only) The
FORT
LOAD control
message causes MONARCH to load
and
transfer
control
to
the
FORTRAN
loader.
The
parameters in
the
control mes-
sage
specify
the mode in
which
the
FORTRAN
loader
is
to
operate
and
the
input
devices
from which
it
is
to
read.
P.
I consists of up
to
eight
parameters
that
may be
given.
The first
three
specify
the
mode in
which
the
FOR-
TRAN
loader
is
to
operate:
MAP
t
Produce
a
storage
map
of
the
program on
the
console
typewriter.
LMAP
t
Produce
a label map
on
the
console
type-
writer.
LTRA
Produce a label
trace
t
at
execution
time.
tThe
output
resulting
from
the
use
of
this
parameter
is
de-
scribed in
Section
6.

These
three
parameters
may
appear
in
any
order
or
may
be
omitted
entirely.
If
they
appear,
they
must
be
the
first
in
the
parameter
string.
The
other
pa-
rameters
specify
which
input
devices
are
to
be
read
(e.g.,
Xl,
BI);
at
least
one
input
device
must
be
specified.
Information
is
loaded
from
the
devices
in
the
order
they
appear
in
the
parameter
Iist.
These
devices
must
have
been
assigned
and
correctly
posi-
tioned
before
the
FORTRAN
loader
is
called.
The
FORTRAN
loader
automatically
loads
the
previously
compiled
program,
which
must
be
on
the
first
input
device
specified
by
the
parameters.
When
additional
input
de-
vices
are
specified
(i.
e.,
in
addition
to
the
un
itfromwhich
the
program
is
read),
the
loader
reads
from
these
devices
only
routines
that
are
necessary
because
of
unsatisfied
references/definitions.
However,
if
the
user
wishes
to
have
the
loader
load
from
the
additional
devices
uncon-
ditionally
(i.
e.,
regardlessofwhetherornot
the
program
references
any
of
the
routines
read
from
that
device),
he
places
the
letter
U
after
the
appropriate
parameter.
Example:
~ASSIGN
BI=MT1W, X1=CR1W.
~FORTLOAD
MAP,
LTRA,
BI,
Xl U.
The
FORTRAN
loader
will
read
a
previously
compiled
FORTRAN
program
from
magnetic
tape
unit
1
and
will
read,
unconditionally,
from
the
card
reader.
It
will
produce
a
storage
map
of
the
program
and
a
label
trace
as
the
program
is
executed.
RTFLOAD
(900
Series
only).
This
control
message
causes
MONARCH
to
load
and
transfer
control
to
the
Real-time
FORTRAN
loader.
The
parameters
specify
the
mode
in
which
the
loader
operates
and
the
input
devices
from
which
it
reads.
Pi
consists
of
up to
eight
parameters
that
may
be
given.
The first
three
specify
the
mode
in
which
the
FORTRAN
loader
operates;
the
narrative
is
consistent
with
that
of
FORTLOAD.
FORTLINK
The
FORTLINK
control
message
causes
MONARCH
to
load
and
transfer
control
to
the
FORTRAN
loader.
This
message
is used
only
when
a
link
tape
is to
be
generated.
Linking is discussed in
Appendix
E.
is
the
identification
number
to
be
assigned
to
the
I
ink
about
to
be
written
on
magnetic
tape;
it
may
be
any
three
decimal
digits.
P
2-9
same
as
Pi
for FORTLOAD.
ALGOLOAD
This
control
message
causes
MONARCH
to
ioad
and
transfer
controi
to
the
ALGOL
ioader.
The
parameter
is
optional.
~ALGOLOAD
BI
BI
(optional)
specifies
binary
object
program
input.
The
ALGOL
loaderalways
reads
binary
object
pro-
grams from
the
device
previ
ously
assigned
to
BI.
After
loading
an
ALGOL-compi
led
object
program,
the
ALGOL
loader
searches
the
system
tape
(magnetic
tape
unit
°on
the
W buffer)
for
any
referenced
library
pro-
grams.
Examples:
~ASSIG
N BI=CR.
~ALGOLOAD.
This
sequence
of
control
messages
causes
the
ALGOL
loader
to
load
a
binary
object
program
from
the
card
reader,
to
load
any
referenced
I
ibrary
programs
from
magnetic
tape
unit
0,
and
to
transfer
control
to
the
ob-
ject
program.
~ASSIGN
BI=MT2W.
~ALGOLOAD
BI.
These
messages
cause
the
ALG
OL
loader
to
read
a
bi
nary
object
program
from
magnetic
tape
unit
2.
Then,
the
loader
reads
the
system
tape,
loads
the
required
library
programs,
and
transfers
control
to
the
object
program.
UTILITY
FUNCTIONS
C
The
C
control
message
directs
MONARCH
to
accept
future
control
messages from a
specific
input
device.
~C
Pl.
must be a
legal
input
unit
assigned
to
an
existing
buffer.
Parameter
Definiti
on
CRnh
Designates
card
reader
n
on
buffer
h.
MTnh
Designates
magnetic
tape
unit
n
on
buffer
h.
PRnh
Designates
paper
tape
reader
n
on
buf-
fer
h.
TYnh
Designates
typewriter
n on
buffer
h.
Unless a C
control
message
directs
otherwise,
MONARCH
automatically
accepts
control
messages from
the
console
typewriter
(1
on
the
W
buffer).
Once
a C message has
been
processed,
MONARCH
im-
mediately
attempts
to
read
a
control
message
from
the
newly
assigned
device.
Example:
~C
PR1W.
This
message
assigns
paper
tape
reader
1 on
the
W buffer
as
the
control
message
input
device.
11

SET
This control message
enables
the user to
set
the
contents
of a
specified
memory
location
to a
given
value
and
is
operative
only
if
the
MONARCH
monitor is in
control.
~SET
A=V
A is
any
legitimate
memory address.
V
is
the
value
to be stored in
location
A.
If
the
value
exceeds
223_1,
the
most
significant
digits
are
stored.
A
and
V may
be
expressed
as
either
octal
or
decimal
numeric
parameters.
Examples:
~SET
017=
-59.
This message
wi
II
cause
the
contents
of
memory
location
000178
to
be
set
to 77777705
(-59
10
=
-73
8).
~SET
64=077777.
This message
wi
II
cause
the
contents
of
cell
1008
(64
1
0>
to
be
set
to 00077777.
~SET
0235=001000114.
This message
wi
II
cause
the
instruction
BRU
00114 to
be
stored in
location
00235
8.
LABEL
The
LABEL
control
message
enables
the
user to write a
level
1 or level 2 MONARCH
ID
record
on a
magnetic
tape
or on
the
RAD
(see
Section
4
II
Sys-
tem
Update
Routine" for a discussion
of
MONARCH
ID
records).
~LABEL
P
l'
P
2'
P3·
is
the
value
1
to
indicate
a
level
1
ID
record or
the
value
2 to
indicate
a
level
2
ID
record.
P2 is
the
unit
on
which
the
ID
record
is
to
be
written.
The
value
of
this
parameter
must
be
either
a
legal
logical
or
physical
magnetic
tape
unit
designation
on
an
existing
buffer (e.
g.,
MT3W
to
specify
mag-
netic
tape
unit
3 on
the
W buffer)
or
II
BO",
if
the
RAD
file
is
to
be
labeled.
P3
is
a
double-
or
single-precision
I
iteral,
used
tocon-
struct
an
8-character
name.
If
fewer
than
eight
characters
are
given,
the
name
field
will
con-
tain
(trail ing) spaces in
the
right-most
character
positions.
A
level
1 or level 2 MONARCH
ID
record
(indicated
by
the
first
parameter)
is
constructed
with
the
name
field
(characters
9 through 16)
containing
the
identifier
spec-
ified
as
the
third
parameter.
The
ID
record
is
then
writ-
ten
on
the
magnetic
tape
designated
by
the
second
pa-
rameter.
A
magnetic
tape
ID
record consists
of
40
char-
acters
(characters
17
through 40
are
blanks)
written
in
binary
(II
odd
II
parity) mode.
12
Example:
~LABEL
2,
MT3W, 'FILENAME'.
This message
will
cause
MONARCH to
write
a
level
2
MONARCH
ID
record
on
magnetic
tape
unit
3 on
the
W buffer.
Characters
9 through 16
of
this record
will
contain
FILENAME.
Normally,
the
only
labels
of
which
RAD
MONARCH
is
cognizant
are
those in
the
Directory
(D
file)
which
were
entered
at
the
time
the
RAD
system was
generated
(see
Appendix
H).
Since,
however,
the
SO
file
immediate-
ly follows
the
S
file,
additional
binary programs may
be
added
to
the
system
(S
file)
by issuing a
LA
BE
L control
message before
each
such program is
generated.
After
the
last program, the message
~LABEL
1, BO, 'SYSEND'
should be issued
to
cause
the
end of
the
system to
be
re-
defined
as following
the
last
location
in
the
BO
file.
DISPLAY
DISPLAY (or SHOW)
allows
the
user to
SHOW
produce
the
contents
of one
or
more
memory
locations
on the
console
typewriter
and
is
op-
erative
only
if
the
MONARCH monitor
is
in
control.
~DISPLA
Y P1
THRU
P2•
~SHOW
P1
THRU
P2.
(required) must
be
a
legitimate
memory address.
If
it
is
the
only
parametergiven,
it
designates
the
one
location
whose
contents
are
to
be
displayed.
If
three
parameters
(p],
THRU,
and P2)
are
given,
P1
is
the
beginning
acIaress
of
the
sequential
memory
locations
whose
contents
are
to be
displayed.
THRU
(optional).
When
the
contents
of more
than
one mem-
ory
location
are
to
be
displayed,
the
second
param-
eter
of
the
control
message must
be
the word
TH
RU.
(optional).
When
present,
this
parameter
must be
a
legitimate
memory address which
is
equal
to
or
greater
than
the
value
of
Pl.
P2
specifies
the
end-
ing address
of
the
sequential
memory I
ocations
whose
contents
are
to
be
displayed.
After
interpreting
the
parameters,
MONARCH
converts
the
contents
of
each
designated
memory
location
to
octal
and
types
each
value,
together
with
its
octal
address on
typewriter
1 on the W buffer.
Examples:
If
location
037777
contains
zero,
the
message
~DISPLAY
037777.
wi
II
cause
the
following
to
be
typed:
037777 =
00000000
The
message
.6.SHOW
0164
THRU
0174.

wi
II
cause
the
address
and
contents
of
each
of
the
9
locations
specified
to be
typed.
POSITION
This
control
message
enables
a
user
to
position
a
magnetic
tape
or
the
RAD
at
a
given
logical
file
(identified
by
a
MONARCH
level
1
ID
record
only
-
not
a
level
2
record;
ID
records
are
described
under
11
System
Update
Routine
ll
in
Section
4).
must
be
a
legal
magnetic
tape
unit
or
logical
unit
designation
on
an
existing
buffer;
e.
g. , MT3W
spec-
ifies
magnetic
tape
unit
3
on
the
W
buffer,
BI
spec-
ifies
the
tape
or
RAD-assigned
BI
file.
P2 is a I
iteral
consisting
of
up to
eight
alphanumeri
c
characters.
Trailing
blanks
(60S)
are
supplied
if
fewer
than
eight
characters
are
given.
The
value
of
th is
parameter
is used
as
the
search
key.
To
position
the
spec
ified
magnetic
tape
or
logical
un
it
at
the
desired
logical
file,
the
MONARCH
Search
sub-
routine
reads
successive
records
(in a forward
direction)
until
a
level
1
MONARCH
ID
record
is
found
that
con-
tains,
in
characters
9
through
16,
the
given
fi
Ie
identi-
fication
(P2).
The
tape
is
read
in
binary
("
odd
l1
parity)
mode,
and
the
maximum ID
record
length
is assumed
to
be
40
words
(160
characters).
The
search
is
terminated
as
follows:
1.
If
characters
9
through
16
of
a
level
1 ID
record
contain
the
logical
file
ID
specified
as
the
second
parameter,
control
is
returned
to
MONARCH
to
ob-
tain
the
next
control
message.
The
tape
will
be
po-
sitioned
in
the
interrecord
gap
wh
ich
follows
the
ID
record.
2.
If
characters
9
through
16
of
a
level
1 ID
record
contains
SYSEND
AA
, a message is
typed
indicating
that
the
specified
logical
file
was
not
found.
Then
control
is
returned
to
MONARCH
to
obtain
the
next
control
message.
3.
If
characters
9
through
16
of
a
level
1
ID
record
contain
neither
SYSEND
AA
nor
the
specified
logi-
cal
file
ID,
the
search
is
continued
until
either
condition
1 or
condition
2 is
satisfied,
or
until
the
computer
operator
intervenes.
Access
to
RAD-assigned
5
or
BI
files
is
random,
since
all
level
1
names
are
retained
in
a
directory.
Examples:
.6.POSITION
BI,'FILEIDEN'.
.6.POSITION MT2W, 'FILEIDE
N'.
Input
from
cards,
the
latter
message
will
cause
MON-
ARCH
to
position
magnetic
tape
unit
2 on
the
W
buffer
in
front
of
the
first
record,
foiiowing
the
ievei
1
MON-
ARCH
ID
record
that
contains
FILE
IDE
t-.J
in
characters
9
through
16.
If
input
is from
the
typewriter,
th is
message
would
appear
as
.6.POSITION
MT2W, @FILEIDEN@.
(See
discussion
on
11
Literal
Parameters
ll
• )
REWIND
The
REWIND
control
message
causes
MONARCH
to
rewind
a
specified
magnetic
tape
unit
or
perform
a
pseudo-rewind
on a
specified
disc
file
.
.6.REWIN D P1
must be a
legal
magnetic
tape
unit
or
logical
unit
designation
on
an
existing
buffer;
e.
g. , MT3W
or
BO.
If
the
logical
unit
specified
has
been
assigned
to
a
disc
file,
MONARCH
performs a
pseudo-rewind
so
that
a
subsequent
read
or
write
operation
will
start
at
the
beginning
of
the
fi
Ie.
A
disc
file
may
be
specified
in
a REWIND
message
only
as a
logical
unit,
such
as
51
or BO;
it
is
not
permissible
to
specify
the
disc
file
directly
with
a
symbolic
parameter
such
as
DF1
B.
Example:
.6.REWIND
MTOW.
wi II
cause
MONARCH
to
rewind
magnetic
tape
unit
0
on
the
W
buffer.
SKIPFILE
t
These
control
messages
cause
MONARCH
SKIPREC
to
skip
fi
Ies
or
records
in
a forward
direc-
tion
on
a
specified
magnetic
tape
unit
(see
also,
BACK-
FILE
and
BACKREC). The
magnetic
tape
unit
and
num-
ber
of
files
or
records
to
be
skipped
are
specified
by
the
control
message
parameters.
.6.5
KIPFILE P
l'
P
2.
(skip
fi
les)
.6.SKIPREC P1
,P
2• (skip
records)
must
be
a
legal
magnetic
tape
unit
designation
on
an
existing
buffer;
e.
g. / MT2W
designates
magnetic
tape
unit
2 on
the
W
buffer.
P2
specifies
the
number
of
files
or
records
to
be
skipped.
After
interpreting
the
parameters,
MONARCH
moves
the
specified
mangetic
tape
forward
the
indicated
number
of
files
or
records.
If
an
EOF
mark
is
encountered
during
a
skip
record
process,
the
tape
will
stop.
Thus,
the
tape
will
be
positioned
immediately
after
the
EOF.
Examples:
.6.SKIPFILE
MT1W,5
.
This
message
causes
MONARCH
to
skip forward 5
files
on
magnetic
tape
unit
1
on
the
W
buffer.
t_.
_____
.
__
._.,
__
._
....
___
.
...
.
~l<..ll"'t-lLt,
HAL
l<..t-lLt
and
Wt
Ut-
deSCriptions
have
not
been
a
Itered,
therefore,
they
still
appl
y
on
Iy
to
rnogtape.
13

~SKIPREC
MT3Y, 10.
This message causes MONARCH
to
skip forward
10(12
8)
records on
magnetic
tape
unit
3 on
the
Y buffer.
BACKFllE
These
control
messages
have
a
function
BACKREC
similar
to
that
of
SKIPFILE
and
SKIPREC;
however,
with
BACKFILE
and
BACKREC
the
magnetic
tape
is moved in a
backward
direction.
~BACKFILE
P
l'
P
2'
~BACKREC
P
l'
P
2'
P1
and
P2
have
the
same
interpretation
as
for
S
KIPFILE
and
SKIPREC.
After
interpreting
the
parameters,
MONARCH moves
the
specified
magnetic
tape
backward
the
indicated
number
of
files
or
records.
If
an
EOF mark
is
encountered
dur-
ing a skip record process,
the
tape
wi
II
stop.
Thus,
the
tape
will
be
positioned
before
the
EOF mark. During a
BACKFILE
operation
the
user
must
backfile
one
plus
the
number
of
files
to
be
skipped
to
return
to
a
particular
fil e of
interest.
Examples:
~BAC
KFILE
MTOY,
12.
This message causes MONARCH
to
skip
backward
12
10
(148)
files
on
magnetic
tape
unit
0 on
the
Y buffer.
When
the
12th
file
is
skipped
MONARCH
will
read
for-
ward
over
the
12th
EOF mark
so
that
the
tape
will
be
positioned
to
read
the first
record
of
the
next
file.
~BACKREC
MT2W,3.
This message causes MONARCH
to
skip
backward
3
rec-
ords
on
magnetic
tape
unit
2 on
the
W
buffer.
WEOF
The WEOF
control
message
directs
MON-
ARCH
to
write
an
end-of-file
(EOF) mark on
the
speci-
fied
tape.
~WEOF
Pl'
must
be
a
legal
magnetic
tape
unit
designation
on
an
existing
bufferor
a
legal
paper
tape
punch
unit
designation
on
an
existing
buffer. That is,
P1
may
take
the
form
MT
ub
or
PPxb,
where
u must
be
within
the
range
0::; u
::;
7,
b is W
or
Y,
and
x
is
1
or
2.
Examples:
~WEOF
MT3W.
This message
causes
MONARCH
to
write
an
end-of-file
mark (17000000) on
magnetic
tape
unit
3 on
the
W buffer.
b.WEOF PP1Y.
This message causes a
special
end-of-file
mark (17170000)
to
be
punched
on
paper
tape
unit
1 on
the
Y
buffer.
(This
14
is to faci
litate
the
loading
of
a FORTRAN-compi led
program
into
the
FORTRAN
library
on
the
system
tape
(see
Section
4,
II
System
Update
Routine").
BOOTlOAD
This
control
message
directs
MONARCH
to
produce
an
absolute
or
relocatable
bootstrapt
on
paper
tape
or
magnetic
tape
as
specified.
~BOOTLOAD
P
l'
P
2'
P1 must
be
ABS
for
absolute
or
REL
for
relocatable.
P2 must
specify
the
magnetic
tape
unit
or
paper
tape
unit
on which
the
bootstrap
is to
be
produced;
e.
g.,
MT2W, PP1W for 900 series; or MT2A, PP1A for
9300.
MONARCH
interprets
the
control
message and produces
the
requested
bootstrap on
the
specified
tape.
These
bootstraps
can
load programs assembled by SYMBOL
or
META-SYMBOL. Although
the
bootstrap may
be
pro-
duced
on
any
paper
tape
or
magnetic
tape
unit,
it
can
be
read
from
only
paper
tape
unit
1 on
the
W
buffer
or
magnetic
tape
unit
0 on
the
W buffer,
on
900
Series
Computers.
Substitute
corresponding
A
channel
for
9300
Computers.
Examples:
~BOOTLOAD
ABS, PP1W.
This
control
message
directs
MONARCH to punch
an
absolute
bootstrap on
paper
tape
punch 1 on
the
W
buffer.
~BOOTLOAD
REL,
PP2W.
This message
causes
MONARCH
to
punch a
relocatable
bootstrap
on
paper
tape
punch 2 on
the
W buffer.
b.BOOTLOAD ABS, MT1W.
This message
directs
MONARCH to
write
an
absolute
bootstrap
on
magnetic
tape
unit
1 on
the
W buffer.
To
load
the
object
program,
dial
the
tape
unit
number to
zero
and
execute
a
fi
II
from
magnetic
tape:
Set
(Xl)
=
-7
(77777771)
EOM
03610
(0 02 03610)
WIM 2
BRU
1
(032
00002)
(0
01
00001)
t
Descriptions
of
the
bootstrap routines
are
avai
lable
from
the
XDS
Program Library: 900
Series
Paper Tape
Abso-
lute
Bootstrap,
catalog
number 020020; 900
Series
Paper
Tape
Relocatable
Bootstrap,
catalog
number 000019;
9300
Paper
Tape
Relocatable
Bootstrap,
catalog
number
600001.
The
magnetic
tape
bootstrap
routines
are
modi-
fi
ed versions
of
the
MO
NARCH boostrap
loader.

Set
the
contents
of
register
A to 0 32
00002.
Set
the
contents
of
register
C to 0
35
00001.
Set
the
RUN-IDLE-STEP
switch
to
STEP.
Press
START.
Press
FILL
switch,
which
sets
(X
1)
to
-7.
If
program
is
relocatable,
set
(A) =
relocation
bias.
Set
the
contents
of
register
C to 0 02
03610.
Set
the
RUN-IDLE-STEP
switch
to RUN.
Note:
To
load
the
925/930/9300
magnetic
tape
boot-
strap,
execute
a
magnetic
tape
FI
LL
procedure.
For
9300
computers,
use
appropriate
channel
la-
bel (i.
e.,
A,
B,
C,
or
D).
CARDTAPE
The CARDTAPE
control
message
causes
MONARCH
to
select
the
designated
card
reader,
to
read
cards
in
symbolic,
encoded,
binary,
MONARCH
identification,
and
control
message formats
and
to
write
them on
the
magnetic
tape
specified.
~CARDTAPE
P
l'
P
2'
must
be
a
legal
card
reader
designation
on
an
exist-
ing buffer;
e.
g.,
CR1W. This
parameter
specifies
the
card
unit
from
which
the
cards
are
to
be
read.
P2 must
be
a
legal
magnetic
tape
unit
designation
on
an
existing
buffer;
e.
g.,
MT2W. This
parameter
specifies
the
tape
unit
on
which
the
information
is
to
be
wri
tten.
Cards
are
read from
the
card
reader
specifi
ed
and
are
written
on
the
designated
magnetic
tape.
Binary,
en-
coded,
MONARCH
identification,
and
control
cards
are
written
in
binary;
all
other
cards
are
written
in
binary-coded
decimal
(BCD). When a
~EOF
card
is
read
or
a
card
reader
end-of-fi
Ie is
detected,
an
end-
of-fi
Ie (EOF) mark is
written
on
the
magnetic
tape,
and
control
is
returned
to
MONARCH.
If
successive
fi
les
are
to
be
written
on
tape,
each
fj
Ie must
be
preceded
by
a CARDTAPE
control
message,
including
the
necessary
parameters.
Example:
The
contro
I message
~CARDTAPE
CR1W,MT3W.
directs
MONARCH
to
read
cards
from
card
reader
1
on
the
W
buffer
and
to
write
them on
magnetic
tape
unit
3
on
the
W
buffer.
When
the
read is
completed,
an
EOF
mark
wi
II
be
written
on
the
magnetic
tape.
EOF
The EOF
control
message
signifies
the
end
of
a
logical
fi
Ie
and
transfers
control
to
MONARCH.
~EOF.
There
are
no
parameters
for this message.
It
is
recognized
by
the
"action"
routine
that
processes
the
CARDTAPE
con-
trol message (see
Section
3 for
explanation
of
action
routines).
The EOF message is a
Iso
recognized
by
the
FORTRAN
and
META-SYMBOL processors.
SYSTEM
MAINTENANCE
UPDATE
This
control
message
causes
MONARCH
to
load
the
System
Update
Routine
and
to
transfer
con-
trol to
it.
~UPDATE
Pl'
(optional).
When
present,
this
parameter
indicates
blocking
mode
operation
and
must
be
within
the
range
The
absence
of
the
parameter
indicates
normal mode
operation.
See
Section
4 for a
description
of
the
update
routine,
its
operating
modes,
and
the
control
messages
required
for
its use.
15

3.
THE
MONARCH
SYSTEM
MONITOR
The major
portion
of
the
MONARCH system is
the
moni-
tor
routine.
This
routine
accepts
control
information
which,
among
other
things, may
include
a request to
load and
execute
a
specified
standard system
routine.
The monitor performs its function
between
jobs
and
does
not
exercise
control
over
the
execution
of
a program
once
the
program has
been
loaded
and
control
has
been
transferred to
it.
The monitor consists
of
a number
of
subroutines.
One
of
these
subroutines is the system
tape
search
routine.
This
is
the
subroutine
that
searches
the
system
tape
for a
given
routine name (see
POSITION
control message).
Another
monitor subroutine
analyzes
and
interprets
the
contents
of
the
control messages
that
convey
control i
n-
formation to the monitor. It
also
converts
the
param-
eters
in control messages
to
standard
internal
form.
Other
subroutines,
called
"action"
subroutines, perform
the
functions
associated
with
specific
control messages.
For
example,
the
action
subroutine
associated
with
the
ASSIG N message modifies
the
contents
of
MONARCH's
unit
assignment tabl
e,
based
on
the
values
of
the
param-
eters
in
theASSIGN
message.
Another
action
subroutine,
associated
with
the
LOAD message,
controls
the
search.:
ing of
tape
files for
specified
object
programs
and
calls
on
the
MONARCH
loader
to
load
these
object
programs.
Additional
subroutines employed by
the
monitor
include
those
which
perform
input/output
for MONARCH.
Part
of
the monitor,
called
the
resident,
j"emains in
core
memory
during
program
execution.
The
resident
consists
of
the
monitor
bootstrap
routine
(Q
BOOT),
the
unit
as-
signment
table,
the
error and job
switches,
the
octal
dump
routine
(QDUMP),
and
the
symbol
table
dump
driver
(see
Appendix
B for a
complete
description
of
memory
layout).
The
resident
occupies
the
last
1328
locations
in memory. In
RAD
MONARCH,
the
resident
also
in-
cludes
a
RAD
file
management
routine
of
approximately
500
memory
locations,
which
handles
all
RAD
I/O
com-
munications in a
file-oriented
manner. Memory
space
occupied
by the remaining subroutines comprising
the
monitor
and
by
other
routines in
the
MONARCH system
(such as
the
MONARCH loader)
is
available
for use
by
the
program
being
executed.
The last
available
location
in
core
is
one
cell
below QDUMP (however,
the
term
QDUMP-l
is
illegal
in META-SYMBOL
language),
or
one
below
QBOOT
for users who
do
not
require
thedump.
STANDARD
SYSTEM
ROUTINES
Standard
system routines
are
those
that
exist
on
a MO
N-
ARCH
system
tape
and
that
can
be
loaded
and
executed
by supplying an
appropriate
control message
to
the
MONARCH monitor. Some
existing
system routines,
as
well
as
the
necessary and
desirable
characteristics
of
potential
system routines,
are
described
below.
16
Certain
of
the
standard system routines must
be
present
on
any
MONARCH system
tape.
These programs
com-
prise
the
minimum
operable
MONARCH system:
1. The monitor. This
routine
is the
heart
of
the
opera-
ting
system.
2. The MONARCH loader. The monitor uses this
rou-
tine
to load standard system routines from
the
sys-
tem
tape
and to load previouslyassembled programs
presented
by
the
MONARCH user. The MONARCH
loader
is
described
later
in this
section.
3.
The MONARCH bootstrap
loader.
This routine
per-
forms
the
function
of
loading
the
MONARCH
loader
and
the
MONARCH monitor and
precedes
all
other
system routines on a MONARCH system
tape.
This
is
the
routine
that
is
called
in for
execution
by
the
monitor bootstrap (QBOOT).
Certain
system routines,
while
not
essential
for a
mini-
mum
MO NARCH system,
enhance
the
usefulness and
flexibil
ity
of
any
MONARCH system.
1. The MONARCH system
update
'routine. With this
routine,
the
user
can
create
new
MO NARCH system
tapes
or
update
existing
system
tapes.
This
routine
is
described
in
Section
4.
2.
The
standard
input/output
subroutines. These
sub-
routines
are
used
by
other
system routines
to
per-
form
required
input/output
functions. These
I/O
subroutines,
which
can
be
selectively
loaded
on
an
II
as
needed
ll
basis,
are
line
Printer
Output
Subroutine
(PRINT)
Magnetic
Tape
Input/Output
Subroutine
(MT
APE)
Card
Read/punch
Subroutine
(CORP)
Paper
Tape/Typewriter
Input/Output
Subroutine
(PTYIO)
The
action
subroutines for a
given
system
routine
ex-
amine
the
parameters
of
the control message
and
the
unit
address
codes
of
those MONARCH
unit
assign-
ment
tab
Ie
entries
that
represent i
nput/
output
func-
tions
tobe
performed
and,
finally,
direct
the
loading
of
the
I/O
subroutines
needed.
The MONARCH
up-
date
routine
relies
on this
feature
to
provice
the
in-
put/output
subroutines
needed
to perform a
speci
fic
update
run.
3.
The
META-SYMBOL assembly system. Presence of
this
routine
provides a powerful
and
flexible
assem-
bly
language
and
processor.

4.
The FORTRAN
II
system.
Presence
of
these
routines
enables
the
MONARCH
user to use
the
full
capa-
bilities
of
the
XDS 900
Series
FORTRAN II
Compiler,
Loader,
and
Run-Time
Package.
5. The
ALGOL
system. This system,
which
is
avai
la-
ble
on
request,
operates
on
both
XDS 900 Seri
es
and
the
9300
Computers.
It
inc
ludes
the
ALGOL
Compi
ler,
Loader,
and
Run-Time
package.
See
"Automatic
Selective
Loading from
the
MONARCH
Librarl
l
at
the
end
of
this
section
for a
description
of
the
MONARCH
library,
another
optional
MONARCH
feature
that
can
contribute
greatl
y to
the
useful ness
and
efficiency
of
a
MONARCH
system.
MONARCH
is
designed
to
faci
litate
the
incorporation
of
additional
system
routines
as
needed.
The
user
can
include
in
a
MONARCH
system
any
routine
that
meets
the
following
requirements:
1..
The
routine
must
exist
(on
cards
or
paper
tape)
in
XDS
standard
bi
nary
language.
2. Its memory
space
requirements
must
be
such
that
it
(or a
special
loader
which
precedes
it
on
the
system
tape)
can
be
loaded
by
the
MONARCH
loader.
3.
It
must
be
written
in
a
manner
that
is
consistent
with run
termination
as
described
in
the
paragraph,
"Termination
of
a Run,
II
below.
Certain
other
characteristics,
while
not
essential,
ease
the
job
of
incorporating
new
system
routines
and
render
these
routines
more useful
in
the
MONARCH
environ-
ment:
1.
The
routine
should
be
one
that
can
be
assembled
as a
series
of
one
or
more
relocatable
programs by
SYMBOL
or
META-SYMBOL.
2.
It
should
be
written
in
such a
way
that
any
"param-
eters"
required
for
its
initialization
can
be
easi
Iy
suppli
ed
in
the
form
of
MO
NARCH
control
message
parameters
(see
"Control
Message
Parameters"
in
Section
2).
3.
The routi
ne
should
be
wri
tten
to
obtai
n uni t
and
channel
assignments for
all
its
input/output
func-
tions from
the
MONARCH
unit
assignment
table.
TERMINATION
OF
A
RUN
When
a program
being
executed
under
MONARCH
reaches
a normal
conclusion,
it
should
transfer
control
to
the
monitor
bootstrap
in
core
memory
(location
1)
rather
than
execute
a
HALT
instruction;
the
monitor
bootstrap
initiates
the
reloading
of
the
MONARCH
loader
and
the
MO
NARCH
monitor.
The monitor
then
attempts
to
read
a
new
control
message from
the
current
control
medium
and
in this
way
proceeds
to
the
next
job
with-
out
the
necessity
for manual
intervention.
The
monitor
bootstrap
is
part
of
the
MONARCH
resident.
When
a
program
being
executed
under
MONARCH
de-
tects
a program
or
computer
error
that
makes
it
inadvis-
able
to
continue
program
execution,
it
should
give
what-
ever
error
indication
is
suitable
and
transfer
control
to
the
monitor
bootstrap.
This
routine
initiates
the
reload-
ing
of
the
MONARCH
loader
and
MONARCH
monitor,
and
then
the
console
operator
can
decide
whether
or
not
to
continue
with
the
next
job
or
function
in
a
batched
job
stack
or
to
take
some
alternative
action.
When
the
console
operator
decides
that
a program
being
executed
has
halted
inadvertently
or
is
otherwise
mal-
functioni
ng,
he
can
stop
the
program,
c
lear
the
regi sters
and
restart
by
manually
transferring
control
to a
restart
location
in
the
monitor
bootstrap.
The
monitor
bootstrap
initiates
the
reloading
of
the
system,
and
then
the
moni-
tor
attempts
to
obtain
the
next
control
message. At
this
point,
the
operator
can
decide
whetheror
not
to
continue
with
the
next
job in
the
batched
job
stack
or
to
execute
some
other
system
function.
The normal
restart
procedure
is
to
execute
a
branch
to
location
1.
Location
1 norma Ily
contai
ns
an
uncondi-
tiona
branch
to
the
monitor
bootstrap
in
upper
memory.
The
routine
that
is
loaded
by
the
monitor
bootstrap
is
the
MONARCH
bootstrap
loader,
which
precedes
all
other
routines
on
the
system
tape.
The
MONARCH
boot-
strap
loader
in
turn
loads
the
MONARCH
loader
and
the
MONARCH
moni
tor.
LOADER
The
primary
function
of
this
routine
is to load
the
user1s
object
programs.
It
is
also
called
upon by
the
MONARCH
monitor
to load from
the
system
tape
standard
system
routines
such
as
META-SYMBOL,
the
system
update
rou-
tine,
etc.
The
loader
(inc luding
QDUMP,
QBOOT,
and
UAT)
occupies
upper
core.
The
loader
is
capable
of
loading
binary
object
programs
in
the
format
produced
by
SYMBOL
and
META-SYMBOL.
A
series
of
programs to
be
loaded
may
be
absolute
or
re-
locatable
and
may
contain:
1. External
label
references
and/or
definitions.
2.
Externa
I Programmed
Operator
(POP)
references
.J/
d
f'
..
t
anY'
or
e I
nl
tlons
.
3.
Blank
COMMON
references
and
a
definition.
Blank
COMMON
references
should
be
preceded
by a
blank
COMMON
definition,
but
external
references
tThe
capability
of
handling
POP
items
is
not
included
in 9300
MONARCH
loader
since
the
9300
does
not
have
Programmed
Operators.
All
other
capabilities
of
the
900
Series
MONARCH
loader
are
included
in 9300
MONARCH
loader.
17
This manual suits for next models
1
Table of contents
Other XDS Desktop manuals