I
The
two
exits
provide a
means
for a
program
to request
its
own
termination.
A non-monitor (object)
program
will usually
use
the
normal
exit
instruction.
to
exchange
back
to the monitor
program.
The
error
exit
allows for
termination of
an
object
program
that
has
branched into
an
unused
area of
memory
or into a data area.
The
exchange
address selected
is
the
same
as
for a
normal
exit.
There
is
a flag in the F
register
for
each
of these
instructions.
The
appropriate flag
is
set
providing the currently active
exchange
package
is
not in monitor
mode.
The
inactive
exchange
package
called in
this
case
is
normally
one
that
executes
in
monitor
mode
and
the flags are read
from
memory
for evaluation of the cause of
program
termination.
The
monitor
program
selects
an
inactive
exchange
package
for activation
by
setting
the address of the inactive
exchange
package
into the
XA
register
and
then executing a
normal
exit
instruction.
Exchange
sequence issue conditions
An
exchange
sequence
initiated
by
other than a
000
or
004
instruction
has
the followtng hold issue conditions, execution time,
and
special cases.
The
corresponding information for the
000
and
004
instructions
is
provided
with the
instruction
descriptions in Section 4 of
this
manual.
Hold
issue conditions:
Instruction buffer data invalid
NIP
not blank
Wait
exchange
flag not
set
S,
V,
or A
registers
busy
Execution time:
49
CPs;
consists of
an
exchange
sequence
and
a fetch
operation.
Special cases:
Block
instruction
issue
Block
I/O
references
Block
fetch
2240004
3-44
E