The ECB is located in the first word of the DECB. An event control block is the subject of WAIT and POST macro instructions. See Table 1.
Offset | Bytes | Bit Value | Hex Code | Description |
---|---|---|---|---|
00 | 1 | 10xx xxxx | W—Waiting for completion of an event. | |
01xx xxxx | C—The
event has completed. One of the following completion codes will appear at the completion of the operation that was initiated by the READ or WRITE macro: Access Methods other than BDAM |
|||
0111 1111 | 7F | Channel program has terminated without error. (The status indicators in Figure 1 are valid.) | ||
0100 0001 | 41 | Channel program has terminated with permanent error. (The status indicators in Figure 1 are valid.) | ||
0100 0010 | 42 | Channel program has terminated because a direct access extent address has been violated. (The status indicators in Figure 1 are not valid.) | ||
0100 0011 | 43 | Abend condition occurred in the error recovery routine. (The status indicators in Figure 1 are not valid.) | ||
0100 0100 | 44 | Channel program has been intercepted because of permanent error associated with device end for previous request. You may reissue the intercepted request. (The status indicators in Figure 1 are not valid.) | ||
0100 1000 | 48 | The channel program was purged. (The status indicators in Figure 1 are not valid.) | ||
0100 1011 | 4B | One
of the following errors occurred during tape error recovery processing:
|
||
0100 1111 | 4F | Error recovery routines have been entered because of direct access error but are unable to read home addresses or record 0. (The status indicators in Figure 1 are not valid.) | ||
0101 0000 | 50 | Channel program terminated with error. Input block was a VSE-embedded checkpoint record. (The status indicators in Figure 1 are not valid.) | ||
1 | 3 | Contains the address of the RB issuing the WAIT macro if the ECB has the WAIT bit on. Once the event has completed and ECB is posted the C bit is set with other bits in byte 0 and these 3 bytes (1-3) are zero, for all access methods except BDAM. For BDAM, only the C bit is set in byte zero and the exception codes are returned in bytes 1 and 2 or the ECB for BDAM. |
Exception Code Bit | READ | WRITE | Condition If On |
---|---|---|---|
0 | X | X | Record not found. (This Record Not Found condition is reported if the search argument is not found in the data set.) |
1 | X | X | Record length check. (This Record Length Check condition occurs for READ and WRITE (update) and WRITE (add). For WRITE (update) variable-length records only, the length in the BDW does not match the length of the record to be updated. For all remaining READ and WRITE (update) conditions, the BLKSIZE, when S is specified in the READ or WRITE macro, or the length given with these macros does not agree with the actual length of the record. For WRITE (add), fixed-length records, the BLKSIZE, when S is specified in the WRITE macro, or the length given with this macro does not agree with the actual length of the record. For WRITE (add), all other conditions, no error can occur.) |
2 | X | Space not found. (This Space Not Found for Adding a Record condition occurs if either there is no dummy record when adding an F-format record, or there is no space available when adding a V- or U-format record.) | |
3 | X | X | Nonvalid request—see bits 9-15 |
4 | X | X | Uncorrectable I/O error. (This Uncorrectable Input/Output Error condition is reported if the control program's error recovery procedures encounter an uncorrectable error in transferring data between real and secondary storage.) |
5 | X | X | End of data. (This End of Data only occurs as a result of a READ (type DI, DIF, or DIX) when the record requested is an end-of-data record.) |
6 | X | X | Uncorrectable error. (Same conditions as for bit 4.) |
7 | X | Not read with exclusive control. (A WRITE, type DIX or DKX, has occurred for which there is no previous corresponding READ with exclusive control.) | |
8 | Not used | ||
9 | X | A WRITE was attempted for an input data set. | |
10 | X | X | An extended search was requested, but LIMCT was zero. |
11 | X | X | The relative block or relative track requested was not in the data set. |
12 | X | Writing a capacity record (R0) was attempted. | |
13 | X | X | A READ or WRITE with key was attempted, but either KEYLEN equaled zero or the key address was not supplied. |
14 | X | X | The READ or WRITE macro request options conflict with the OPTCD or MACRF parameters. |
15 | X | A WRITE (add) with fixed length was attempted with the key beginning with X'FF'. |
Figure 1 lists status indicators for BDAM, BPAM, BSAM, and QSAM.
Offset in
status indicator
area
Byte Bit Meaning Name
-12 - Word containing length that was read Valid only when reading with LBI
+2 0 Command reject Sense byte 0
1 Intervention required
2 Bus-out check
3 Equipment check
4 Data check
5 Overrun
6,7 Device-dependent information;
see the appropriate device
manual
+3 0-7 Device-dependent information; Sense byte 1
see the appropriate device
manual
The following bytes make up the low-order seven bytes of
a simulated channel status word (CSW):
+9 — Command address pointing after last executed CCW
The ending CCW may have the indirect data addressing bit and/or data chaining bit on
+12 0 Attention Status byte 0
1 Status modifier (Unit)
2 Control unit end
3 Busy
4 Channel end
5 Device end
6 Unit check—must be on for
sense bytes to be significant
7 Unit exception
+13 0 Program-controlled interrupt Status byte 1
1 Incorrect length (Channel)
2 Program check
3 Protection check
4 Channel data check
5 Channel control check
6 Interface control check
7 Chaining check
+14 — Count field (2 bytes) Not valid with LBI
If the sense bytes are X'10FE', the control program has set them to this nonvalid combination because sense bytes could not be obtained from the device because of recurrence of unit checks.