
User Manual
Appendix B
GFK-1742F
Jan 2020
DSM314 Communications Request Instructions
405
Data Block Length (Word 1): The length of the Data Block header portion of the Command
Block. It should be set to 4 for the DSM. The Data Block header is stored in Words 7 through
10 of the Command Block
WAIT/NOWAIT Flag (Word 2): This must always be set to logic zero for the DSM.
Status Word Pointer Memory Type (Word 3): This word specifies the memory type that will
be used for the Status Word. Each memory type has its own specific code number, shown in
the Memory Type Codes table below. So, for example, if you want to use %R memory for
the Status Word, you would put either the decimal code number 8 or the hexadecimal code
number 08h in this word.
Note that if you select a discrete memory type (%I or %Q), 16 consecutive bits will be
assigned to the Status Word, beginning at the address specified in the Status Word Pointer
Offset word, described below.
Status Word Pointer Offset (Word 4): This word contains the offset within the memory type
selected. Note: The Status Word Pointer Offset is a zero-based number. In practical terms,
this means that you should subtract one from the address number that you wish to specify.
For example, to select %R0001, enter a zero (1
–
1 = 0). Or, if you want to specify %R0100,
enter a 99 (100
–
1 = 99). Note that the memory type, %R in this example, is specified by the
previous word (see the “Status Word Pointer Memory Type” explanation above).
Idle Timeout Value (Word 5): Since the DSM always uses the NOWAIT mode
(WAIT/NOWAIT flag always set to zero), this Idle Timeout Value parameter is not used for
the DSM. Set it to zero.
Maximum Communication Time (Word 6): Since the DSM always uses the NOWAIT mode
(WAIT/NOWAIT flag always set to zero), this Maximum Communication Time parameter is
not used for the DSM. Set it to zero.
Command Code (Word 7): This is always E501(hexadecimal) for the DSM. To enter this
value directly as a hexadecimal value, use a Word-type MOVE instruction. Also, since this
value is 58,625 in decimal, an Integer-type MOVE instruction (limited to a maximum
decimal value of 32,767 because bit 16 is used for the sign) does not have the capacity to
contain it. A Word-type MOVE instruction can hold a decimal number up to 65,535 (FFFF in
hex.).
Parameter Data Size (Word 8): Specifies the Parameter Data size in bytes. This value is
always 68, which provides 4 bytes (for the first two words of the Parameter Data section)
plus 4 additional bytes for each parameter loaded.
Parameter Data Memory Type (Word 9): This word specifies the memory type that will be
used for Parameter Data. Each memory type has a unique code number, shown in the
Memory Type Codes table below. So, for example, to specify %R memory, you would put
either the decimal code number 8 or the hexadecimal code number 08h in this word.
Note that if you select a discrete memory type (%I or %Q), a group of 32 consecutive bits will
be required for each parameter, and a group of 16 consecutive bits each will be required for
Words 11 and 12.