A modem includes a Digital Access Arrangement (DAA) Circuit and modem software
that is executed by a processor. When the DAA Circuit detects that the modem software
is nonfunctional, it enters an on-hook state to prevent blocking of a coupled telephone
line. A nonfunctional state of the modem software is detected when the modem software
ceases to interact with the DAA Circuit in an expected manner. In a first operation,
the nonfunctional state is determined when the modem software does not reset a
count down timer in the DAA Circuit before the count down timer reaches a termination
value. In a second operation, the nonfunctional state is determined when the modem
software does not access the DAA Circuit before the count down timer reaches the
termination value. In a third operation, the nonfunctional state is determined
when the modem software ceases writing transmit data to DMA memory.