HOW
TO
FIND
THE I/O BUFFER IN APL
In
the
following example, data was received from an I/O
device using the serial I/O Adapter feature. The I/O oper-
ation was
not
completed because an end
of
buffer character
was
not
received from the I/O device. Therefore, the data
received from
the
I/O device
is
still
in
the
I/O data buffer.
( This data can be displayed and interpreted as follows:
(
('
(
1. Using
the
DCP1
display function, display
the
address
of
the
start
of
the user workspace, which
is
located
at
hex
0180
in
read/write storage:
D
OlElO
LOC@
01BO
ncp:l.
Address of the start
of
the user workspace
~~--"--""'''''
0000
OE80
8274
8342
DCPl
I~C(jO
0000
0000
(lOOO
Oleo
4003
5682
0000 0000 0000
0000
8l8E
8142
2.
Add hex 0184
to
the address
of
the start
of
the user
workspace:
Hex OE80 (start of user workspace)
Hex 0184
Hex 1004 (address
of
shared variable table entries)
3. Display the shared variable table entries
at
hex address
1004.
P
:1.004·
LOC@
l004·
DePl
Displacement address of I/O buffer area
r~--"''''''--",
(l00(l 2:1.C4
0000
2:1.84
DCPl
0000
0000
0000
nooo
1014
00000000
0000 0000
0000 0000 0000 0000
4. Now,
to
find
the
I/O
buffer area, add the I/O buffer
area displacement address
to
OE80 (address
of
the
start
of
the user workspace):
Hex 21C4
(110 buffer area displacement address)
Hex OE80 (address
of
start of user workspace)
Hex
3044
(address of the I/O buffer area)
Language
Support
6-13