Modem Deadlock; Adaptive Dialing - HP 82718A Expansion Pod Reference Manual

For use with the hp-75
Hide thumbs Also See for HP 82718A Expansion Pod:
Table of Contents

Advertisement

Software Usage and Examples
The block size used by the modem with Receiver XON/XOFF Protocol is 8 to 64 bytes, in 8-byte
~'
increments. If the external device may send 16 characters after receiving an
~9tf,
for example, then the
block size can be any value of 64-16=48 bytes or less without risking loss of data. The block size is
specified in bits
2-0
of
K~.
When the modem is using Transmitter XON/XOFF Protocol, it will send a maximum of 3 characters after
it receives an
~9:ft
(actually, a .1<.5 character).
Modem Deadlock
Modem deadlock
occurs when the modem transmit buffer is full, but the modem cannot transmit the data
out the phone line to the host computer. If the transmit buffer is full, the HP-75 cannot send any
commands or data to the modem, since everything sent to the modem by t'10DOUT is placed in the
transmit buffer for processing. The modem cannot send the data and thus empty the buffer, and cannot
accept anything from the HP-7 5 until the buffer is empty, hence the term deadlock.
The situations that can cause deadlock are as follows:
1) The host computer is not ready to receive data.
This could be because of multitasking,
time-sharing, slow data communications software, or any of a variety of reasons.
2) The modem is using a handshake protocol that disables data transmissions until a certain character
is received from the host computer (or terminal if the HP-7 5 is the host). If the host does not send
the character, data transmissions will not be resumed.
The applicable protocols are Transmitter
XON/XOFF, Transmitter ENQ/ ACK, and Prompt Mode.
t'10DOUT waits until the transmit buffer is ready to accept data before sending anything to the modem.
If the modem is deadlocked, t'10DOUT will wait forever. Once t'10DOUT starts to wait, you can halt it by
pressing [ATTN] (a low battery condition in the HP-75 will halt it as well).
You can then only use
high-level modem commands to clear a deadlock.
I
t·~
I
T
I
AL
I
ZE
": t'l0 Dt'lII will reset the modem to
its default state, thereby clearing the deadlock. t'10DEt'l
OFF or turning the HP-75 off will end the
data transmission; when the modem is turned back on, the deadlock condition will be cleared.
Because the transmit buffer is full, no low-level modem commands can be used to clear a deadlock
condition. In particular, I
(INITIALIZE) will not reset the modem to its default state, K (KONTROL)
will not change to a different handshake protocol, and T (TEST) will not perform the power-on test and
clear the buffers.
If you anticipate a possible deadlock, you should plan for this in your program. The PEAD\'? high-level
modem command returns a 1 if the modem transmit buffer is ready to receive data from the HP-75, or a
o
if the modem is not ready, and thus identifies deadlock. If deadlock may occur temporarily because of
delays by the host, your program could just wait for the deadlock condition to go away (F.:EAD\'?=l). If
deadlock may occur because of handshake protocol, your program may only be able to use
I
t·~
I
T
I
AL
I
ZE
": t'10Dt'l" or t'10DEt'l
OFF to clear the condition. If deadlock is of great concern,
your program should only send one character at a time to the modem with t'lODOUT, waiting before each
character is sent until F.:EAD\'? =1.
Adaptive Dialing
Telephone systems in the United States accommodate one (or both) of two alternate dialing schemes. The
older scheme, used for rotary-dial phones, is called interrupt or pulse dialing. The newer scheme, used for
34

Advertisement

Table of Contents
loading

Table of Contents