' ' Author: Wes Johnston ' ' dialtype=0=dtmf dialing, 1=pulse dial ' ' speed0 contains up to a 15 digit phone number to dial, the first ' nibble is the number of digits to dial. dtmfqueue var byte dtmfwork var byte dtmfconv var byte dtmfdigit var byte dtmfbegin var byte dialtype var bit speed0 data 0(16) pick_up: rem turn on relay, and wait for the line to stabilize. high 9 pause 2000 dtmf_dialing: write speed0,dtmfqueue-dtmfbegin+1 for dtmfwork=dtmfbegin to dtmfqueue read dtmfwork+dialoff,dtmfconv write dtmfwork-dtmfbegin+1+speed0,dtmfconv rem if dtmf dial mode, go to the dtmf out command if dialtype=0 then dtmf_signal rem if nubmer is greater than 9 (ie ABDEF) then don't dial them. if dtmfconv>9 then dtmf_bottom if dtmfconv<>0 then pulse_it dtmfconv=10 pulse_it: for dtmfdigit=1 to dtmfconv toggle 9 pause 50 toggle 9 pause 50 next pause 500 goto dtmf_bottom dtmf_signal: dtmfout 11,[dtmfconv] dtmf_bottom: next