Aug 1, 1979
where xx has a high numeric value and nn has a low numeric value. The machine the DIAGNOSE Loue X;28; must be in the
supervisor mode at the time it issues the DIAGNOSE instruction. When DIAGNOSE Code X'28' is issued, the Rx register contains the
address of the TIC or NOP CCW that was modified by the virtual machine.
The Ry register contains the device address in bits 16 through 31. Rx
and Ry cannot be the same register. The addresses specified in the Rx
register, the new address in the modified TIC CCW, and the new CCW list
to which the modified TIC CCW points must all be addresses that appear
real to the virtual machine: CP knows these addresses are virtual, but
the virtual machine thinks they are real.
The condition codes (cc) and completion codes are as follows: cc=O The real channel program was successfully modified; register
15 contains a zero.
cc=1 There was probably an error in issuing the DIAGNOSE instruction. Register 15 (R15) contains one of the following
completion codes:
R15=1 The same register was specified for Rx and Ry.
R15=2 The device specified by the Ry register was not found.
R15=3 The address specified by the Rx register was not within
the user's storage space.
R15=4 The address specified by the Rx register was not
doubleword aligned.
R15=5 A CCW string corresponding to the device (Ry) and
address (Rx) specified was not found.
R15=6 The CCW at the address specified by the Rx register is
not a TIC nor a NOP, or the CCW in the channel program
is not a TIC nor a NOP. R15=7 The new address in the modified TIC CCW is not within
the user's storage space.
R15=8 The new address in the modified TIC CCW is not
doubleword aligned.
cc=2 The real channel program cannot be modified because a channel
end or device end already occurred. Register 15 contains a The virtual machine should restart the modified channel
program. DIAGNOSE Code X'2C' -- Return DASD Start of LOGREC Execution of DIAGNOSE Code X'2C' allows a user with privilege class C, E, or F to find the location on the disk of the error recording area,
the number of error recording cylinders, and the location of the first
error record.
The register specified as Rx contains a one-byte code in the
low-order byte, indicating the function to be performed: X'01' - Return the DASD location of the start of the error recording
area, and the number of error recording cylinders. X'02' - Return the HDRSTART value (DASD location of first error
record) X'04' - Return indication of whether there are frame records on the
error recording cylinders. Part 2. Control Program (CP) 195
Page of GC20-1807-7 As Updated Aug 1, 1979 by TNL GN25-0492 On return to the issuer of DIAGNOSE '2C':
If code '01' is specified: Register Rx will contain the DASD
location (in VM/370 control program internal format) of the start of
the error recording area. Ry contains, in the low-order halfword,
the number of error recording cylinders. ir code 'VL' specified; Register Rx will contain the DASD location of the first error record (in CCPD format). The value
actually points to the last frame record written, or record 2 if no
frame records present.
If code '04' is specified: Register Ry will contain a X'02' in the
low-order byte if frame records are present on the error recording
cylinders; X'OO' if no frame records present. Codes '02' and '04' may both be specified (code '06') on invoking DIAGNOSE. Eoth an Rx and Ry value must be specified. DIAGNOSE Code X'30' -- Read One Page of lOGREC
Data
Execution of DIAGNOSE Code X'30' allows a user with privilege class C,
E, or F to read one page of the system error recording area. The
register specified as Rx contains the DASD location (in VM/370 control
program internal format) of the desired record. The Ry register
contains the virtual address of a page-size buffer to receive the data.
The DMKRPAGT routine supplies the page of data. The condition codes
returned are:
Condition o
1
2
3 Me.@il!.9 Successful read, data available
End of cylinder, no data 1/0 error
Invalid cylinder, outside recording area DIAGNOSE Code X'34' --Read System Dump Spool F i I e
A user with privilege class C or E can read the system spool file by
issuing a DIAGNOSE Code X'34' instruction. However, this Diagnose Code
cannot read spool files that contain VMDUMP records --use DIAGNOSE Code X'14' for this purpose. If a program attempts to use DIAGNOSE Code X'34' to read VMDUMP records, CP returns a condition code of 2. The
register specified as Rx contains the virtual address of a page-size
buffer to receive the data. The Ry register, which must not be register
15, contains the virtual address of the spool input card reader. Ry+1,
on return, may contain error codes as follows:
Condition
__ __
o
1
2
3
3
3
3
Ry+1 4
8
12
16 Data transfer successful
End of file
File not found
Device address invalid
Device type invalid
Device busy
Fatal paging 1/0 error 196 IBM VM/370 System ?Logrammer's Guide
Previous Page Next Page