Rx+l
Rx+
1 must point to the
buffer
in virtual storage where
CP
is
to
return the command response.
Ry+l
Ry+
1 must specify, in bytes,
the
length
of
the
buffer.
This value must
not
exceed 8192.
If
the command response is
to
be
returned
in a buffer,
CP
sets a condition code and returns information as follows:
condition code 0
The request was successful.
The
Rx
+ 1 register points
to
the buffer
that
contains the command response.
The
Ry
+ 1 register specifies the length
of
the
response.
condition code 1
The
request was unsuccessful.
The
response does
not
fit
into
the
buffer. The
Ry+
1 register contains a value
that
specifies
how
many bytes
of
the
response would
not
fit
into
the
buffer.
When
CP
returns to a program executing a
DIAGNOSE
8
instruction, the length value
that
was supplied in register
Ry
is replaced
by
the
CP
completion code value. This value is
zero if
the
CP
console function was successfully executed.
If
an
error
occurred, the completion code is
the
numeric value
expressed
in
the message describing
the
error.
For
example,
if
error
message
DMKCFM045E
is issued,
CP
sets a
completion code
of
45.
If
the
user has
not
specified a command response buffer,
error
messages
and
informational messages are generated
according
to
the current values established
by
SET EMSG
and
SET
IMSG
commands.
If
a command response buffer is used,
error
and
informational messages are always
put
into
the
buffer instead
of
being written
to
the console.
Each
line
of
the
response is
followed
by
a new line character
(X'15').
If
the
buffer is
not
long enough
to
contain all
of
the
response lines, only as
many
complete lines as
can
fit
into
the
buffer
are supplied, so
the
last character written into
the
response buffer
by
CP
is
always a
new
line character.
Any
unused portion
of
the
A-8
VM/PC
Users Guide