with DIAGNOSE code 1'20', a virtual aachine user can specify any valid CCW chain to be performed on a tape or disk device. Bo I/O interrupts
are reflected to the virtual aachine; the DIAGBOSE instruction is completed only when all I/O commands in the specified CCW chain are
finished. The register specified as Rx contains the virtual device
address. The Ry register contains the address of the CCW chain.
The CCWs are processed via DMKCCWTR through DMKGIOEI, providing full
virtual I/O in a synchronous fashion (se1f-aodifying CCWs are not
permitted, however) to any virtual machine specified. Control returns
to the virtual machine only after completion of the operation or
detection of a fatal error condition. EREP support is provided for tape
and DASD devices only; all other devices will present an error condition
in the PSW to the virtual user. Condition codes and error codes are
returned to the virtual system. The condition codes and error codes returned are as follows:
cc=O I/O completed with no errors
cc=1 Error condition. Register 15 contains the following:
R15=1 Device is either not attached or the virtual channel is
dedica ted.
R15=5 Virtual device is busy or has an interrupt pending.
cc=2 Exception conditions.
following:
Register 15 contains one of the
R15=2 Unit exception bit in device status byte=1
R15=3 Wrong length record detected.
cc=3 Error Condition:
R15=13 A permanent I/O error occurred or an unsupported device was specified. The two rightmost positions of the
user's Ry register contain the first two sense bytes DIAGNOSE code 1'24' requests CP to provide a virtual aachine with
identifying inforaation and status inforaation about a specified virtual
device. The virtual machine must specify the virtual device for which
information is requested. CP returns inforaation about the virtual
device and associated real device in the RX, Ry, and Ry+1 registers. CP
also provides a condition code identifying the specific device
information returned to the virtual aachine. When a virtual machine issues DIAGNOSE code 1'24', the Rx register must contain the virtual device address for which information is
requested or the value negative 1 (-1). Specify -1 when the device is a
virtual console whose address is unknown to the virtual aachine. When CP returns control to the virtual machine,
registers contain device information. The Ry
information about the virtual device and the Ry+1 about the real device. If -1 was specified and CP
console, the Rx register contains information about
the Ry, Ry+l, and Rx
register contains
register information
located the virtual
the virtual console.
CP obtains device information froa three control blocks:
device information from the virtual device block (VDEVBLOK), virtual
and real
1-58 IB! V!/370 System Logic and Problem Determination--Voluae 1
device inforaation from the real device block (RDEVBLOK) and froa BICBLOK. The following diagrams identify specific information returned
by CP and show how to locate this information in the RX, Ry, and Ry+1
registers. The sy.bolic names used in these diagrams are the symbolic naaes used with VDEVBLOK, RDEVBLOK, and BICBLOK in V!/370 Data and Control Block t i 1 Byte 0 Byte 1 Byte 2 Byte 3 1 1------------------------------------------ I I RDEVT!CD i-or = I NICT!CD I , Naae !eaniM virtual 1 device !
address 1 I I \I RDEVT!CD Terainal code bits defining the type of console and
- or -the translate table the console is using. RDEVT!CD is BICT!CD for a local virtual console; BICT!CD for a remote 3270 virtual console , Byte 0 Byte 1 Byte 2 Byte 3 I -----------------------------------------1 VDEVTYPC VDEVTYPE VDEVST1T VDEVFL1G I SIabol!£ !eaninq YDEYTYPC Virtual device type class YDEVTYPE Virtual device type VDEYST1T Virtual device status YDEYFL1G Virtual device flags
r I Byte 0 Byte 1 Byte 2 Byte 3
r I BDEVTYPC BDEVTYPE RDEV!DL BDEVFTR I - or --or --or - I IICDTYPE NIC!DL BDEVLLEB I - or - I BICLLEB
CP Introduction 1-59
Previous Page Next Page