• Keine Ergebnisse gefunden

Generic Logical Device Commands

Device 0: Control Unit

Cmd

Code Description

(01) Execution of a Write command will send data from the channel to the control unit address space, beginning at the address defined by the Address Register in the DCB of the logical device addressed. The Write command terminates when the channel stops sending data or when a DACU 64K byte page boundary is reached. In certain situations, the channel adapter may transfer into memory one more byte of data than sent by the host. (The data content is unpredictable.) Users should leave space between buffers for this extra byte of data when mUltiple buffers are defined for a logical device.

(04)

(E4)

(OB)

(OE)

(12)

On receipt of this command, the DACU returns four bytes of sense information to the channel. This command is accepted even if the device is in a not-ready state.

The DACU returns unit identification bytes. Sense ID returns seven bytes with value X'FF3258003251FF'.

Sounds an audible alarm on the DACU System Unit. (A different tone is associated with each logical device.) Sends three "dummy" bytes to the host. (Provided only for compatibility with GAM transmission of 3250 Read Manual Input command.)

Sends four "dummy" bytes to the host. (Provided for compatibility with GAM transmission of 3250 Read X,Y Position command and for attention pacing.) See section

"Read XY-Position Required after Attention" on page 49.

Status and Sense bytes are defined for each of the logical devices in sections following.

The control unit address space is that part of the DACU containing the 64K Serial I/O memory space and the 56K Parallel I/O memory space. The control unit address space is addressed by the host system via a Set Address Register command.

The Address Register is implemented as four bytes of DACU memory in the control unit's Device Control Block (DCB).

Command

No-Operation

Test I/O

Set Stop Register

Set Start Register

Valid DACU commands follow:

Cmd

Code Description

(03) Performs no operation. Typically, this command would be used to obtain status information for the Control Unit. In response to a No-Operation command, the DACU supplies both Channel-End and Device-End.

(00) When the host system executes a Test I/O instruction and sends it to Logical Device 0, the DACU responds with a status byte. If no status information is outstanding for the addressed device, an all-zeros status byte is returned. Any status for the addressed device is transmitted to the channel and is then reset at the end of the sequence, except for busy, which is not reset.

No initial or ending status presentations are made in response to a Test I/O.

(07)

(27)

This command transfers two bytes from the channel and loads them into a Stop Register in the Device Control Block (DeB) in the DACU. (The content of this register is not currently used by DACU control programming.) Both Channel-End and Device-End status are returned to the channel when the data transfer is complete.

This command initiates the transfer of two bytes from the channel to the Start Register in the DACU DCB. The two bytes (which must represent an even number between X'OOOO' and X'7FFF') are not used by the Control Unit Logical Device (Logical Device 0). Channel-End status is returned to the channel on completion of the data transfer; Device-End status is returned immediately. This command performs no useful function for the OEMI logical device.

Cmd

Command Code Description

Set Address Reg. (IB) Execution of this command causes the channel to send four bytes from the host system to the Address Register field in the DCB for the Control Unit. The content of the Address Register is used to determine the offset of the starting address for a data transfer (Read or Write). Although any four-byte address can be sent, only the following address ranges are meaningful for data transfers:

X'OOOOO' - X'OFFFF' 64K Section of DACU Memory for Serial I/O Data

X'lOOOO' - X'lDFFF' 56K Parallel I/O Interface Facility Address Space.

Communication of address register values of X'FFFFxxxx' are not allowed for the Control Unit Logical Device. Each use of Set Address Register modifies the previous state of the Address Register.

Read (02) This command causes the DACU to send data from the address space of the Control Unit to the channel. The starting location within the address space is determined by the content of the Address Register in DCB for the Control Unit Logical Device.

The Read command terminates when the channel stops accepting data, when the control unit stops sending data, or when a 64K byte DACU page boundary is reached.

Write (01) Execution of a Write command will send data from the channel to the control unit address space, beginning at the address defined by the Address Register for the Control Unit Logical Device, The Write command terminates when the channel stops sending data, when the control unit stops receiving data, or when a 64K byte DACU page boundary is reached. In certain situations, the channel adapter may transfer into memory one more byte of data than sent by the host. (The data content is unpredictable.) Users should leave space between buffers for this extra byte of data when multiple buffers are defined for a logical device.

Sense (04) On receipt of this command, the DACU returns four bytes of sense information to the channel. This command is accepted even if the device is in a not-ready state.

Command

Sense ID

Set Audible Alarm Read Manual Input

Read XY Position

Cmd

Code Description

(E4) The DACU returns unit identification bytes. Sense ID returns seven bytes with value X'FF3258003251FF'.

(OB) Sounds an audible alarm on the DACU System Unit.

(OE) Sends three "dummy" bytes to the host. (Provided only for compatibility with GAM transmission of 3250 Read Manual Input command.)

(12) Sends four "dummy" bytes to the host. (Provided only for compatibility with GAM transmission of 3250 Read X,Y Position command.)

Bit Meaning

Bit 0, Attention Used to signal the host that the logical device requires action because of: 1) a real device interrupt, or 2) an application interrupt. Always presented with Bit 6

=

1.

Bit 1, Status Modifier Not used.

Bit 2, Control Unit End Not used.

Bit 3, Busy Used when Set Start Register Channel End but not Device End has been sent. Used during Selective Reset activities in the control unit.

Bit 4, Channel End Set to show that the DACU no longer requires the use of the channel.

Bit 5, Device End Set to show that the command has been executed and that the control unit logical device is ready to accept another command.

Bit 6, Unit Check Set in response to an invalid command code, with Command Reject being set in the Sense Byte. Set to indicate a parity error on Command or Data Out, with Bus Out being set in the Sense Byte. Set to indicate an internal parity error in conjunction with the Data Check bit in the Sense Byte. If the command was accepted but not completely processed, Channel End accompanies Unit Check.

If the command was completely processed, Device End is also sent.

Bit 7, Unit Exception Not used.

Figure 4. Control Unit Logical Device Status Byte

Bit Meaning BYTE 0:

Bit 0, Command Reject Set when an invalid channel command is received or an illegal address is encountered.

Bit 1, Intervention Not used.

Required

Bit 2, Bus Out Check Set by a parity error in data or a command received by the DACU.

Bit 3, Equipment Check Not used.

Bit 4, Data Check Set by the occurrence of an internal parity error in the DACU.

Bit 5, Overrun Not used.

Bit 6 Not used.

Bit 7 Not used.

BYTES 1-3:

User defined.

Figure 5. Control Unit Logical Device Sense Bytes