SVC 33 (0A21)

IOHALT macro - is type 2, gets IOSUCB lock.

Calls module IGC0003C.

Note: This SVC can be used in two ways. The first way (which is used by the IOHALT macro) is used by setting the low order bit of R1 to 1; the second way is used by setting the low order bit of R1 to 0.
GTF data for the first way (low-order bit of R1 is 1) is:
R15
No applicable data.
R0
UCB address (common segment), a fullword pointer; or address of a UCBCOPY. (See z/OS MVS Programming: Assembler Services Reference IAR-XCT for more information.)
R1
Contents:
Bytes
Contents
0-1
If byte 1 of R1 is X'81' then R0 contains the offset from the IOB to the virtual CCW that corresponds to the central CCW to be modified to a NOP.
2
Ignored
3
Input    Option
= "01"
  use IOS HALT I/O subroutine.
= "81"
  use EXCP CCW modify subroutine.
     
CUU dddd The device number associated with the device being halted.
GTF data for the second way (low-order bit of R1 is 0) is:
R15
No applicable data.
R0
If byte 1 of R1 is X'81' then R0 contains the offset from the IOB to the virtual CCW that corresponds to the central CCW to be modified to a NOP.
R1
Contents:
Bytes
Contents
0
Ignored
1
Input    Option
= "00"
  use IOS HALT I/O subroutine.
= "80"
  use EXCP CCW modify subroutine.
2-3
Address of the UCB or UCBCOPY associated with the HALT request.
     
CUU dddd The device number associated with the device being halted.