Output #count buffer (peripheral mode) – Measurement Computing Personal488 rev.3.0 For DOS & Windows 3.Xi User Manual
Page 316

III. COMMAND REFERENCES - 15. Command References
15A. Driver488/DRV Commands
Personal488 User’s Manual, Rev. 3.0
III-301
OUTPUT #count BUFFER (Peripheral Mode)
SYNTAX
OUTPUT #count BUFFER buf-addr [CONTINUE] [term] [term] [EOI]
count
is the number of characters to
OUTPUT
.
buf-addr
is the memory buffer address.
CONTINUE
specifies an asynchronous data transfer.
term
and
EOI
override the normal IEEE 488 bus output terminators.
RESPONSE
None
MODE
*CA
BUS STATES
Determined by the Controller.
REN asserted if SYS CONTROLLER and AUTO REMOTE are enabled.
SEE ALSO
ENTER, TERM, TIME OUT, BUFFERED
EXAMPLES
PRINT#1,"OUTPUT#100 BUFFER
&H2000:0"
Send 100 characters from memory at &H20000.
PRINT#1,"OUTPUT#100 BUFFER
&H20100 EOI"
Send 100 characters from memory at &H20100
asserting EOI with the last character.
PRINT#1,"OUTPUT#100 BUFFER
&H1000:0 EOI"
Send 100 characters, asserting EOI on the last
character.
PRINT#1,"OUTPUT#100 BUFFER
&H2000:0 CONTINUE EOI"
Send 100 characters and allow the program to
continue while the transfer is taking place.
PRINT#1,"WAIT"
Send 100 characters and allow the program to
continue while the transfer is taking place.
In Peripheral mode, the
OUTPUT #count BUFFER
command sends data to the I/O adapter under
control of the Active Controller. The Active Controller must put Driver488 into the
Talk
state and
configure some bus device to accept the data that is transferred. The
Talk
state can be checked with
the
STATUS
command or it can cause an interrupt via the
ARM
command. A time-out error occurs, if
enabled, if the Controller does not accept the data within the time out period after issuing the
OUTPUT #count BUFFER
command.
The character count
count
must be specified and is the number of characters that is transferred.
OUTPUT #count BUFFER
does not send any bus output terminators unless they are specified. The
number of characters actually sent can be checked with the
BUFFERED
command.
If
CONTINUE
is specified, then Driver488 returns control to the user’s program as soon as possible
without waiting for the transfer to be completed. It does, however, wait for the first byte to check for
time-out unless a time-out value of
0
had been specified by a
TIME OUT
command. Because of
hardware limitations, the
CONTINUE
may not return until a substantial portion of the transfer is
complete, if Driver488 is configured for no interrupts.
CONTINUE
transfers are not finished until Driver488 has had an opportunity to “clean up” and complete
the transfer. This “clean up” is usually automatic: Driver488 implicitly performs a
WAIT
command
before performing any bus command. The program can itself use the
WAIT
command to guarantee that
the transfer is complete. If
EOI
is specified, the last byte is not transferred until Driver488 has the
opportunity to perform this clean up.
All characters in the memory buffer are sent exactly as stored. No detection of the
EOL
output
terminator is performed, and no terminator translation takes place.
Even as a Peripheral, Driver488 might be the System Controller. If it is and if
AUTO REMOTE
is
enabled, then it asserts RemoteEnable (
REN
) before sending any data.