[net.micro.atari16] RTS/CTS problems in ST

don@cs.qmc.ac.uk (Don Beal) (08/24/86)

Expires:

References:

Followup-To:

Distribution:

Keywords:


Help!
Does anyone understand the RTS/CTS problems on the Atari well enough to
explain the problems below, and hopefully, offer a fix?

The Atari TOS has, as one of its options for the RS232 (modem) port, the
option to use the RTS/CTS lines.  I needed this for my modem because
although the ST talks to the modem at 1200/1200, the modem communicates
across the telephone line at 1200/75 (a British standard), and hence
output from the ST needs to be flow-controlled by the modem which is
"speed buffering" and sending at 75 baud.

My first attempt with the flow control actually worked (although see next
paragraph), but had the extraordinary side effect of heavily corrupting the
(non-flow-controlled) incoming data at 1200.  Investigation proved this
wasn't the modem, but pin 3 on the Atari (receive data) distorting the
incoming signal!!!!  (Yes, I know this is inconceivable, but it happens.)
No distortion if TOS asked not to use flow control, or RTS/CTS is
disconnected.

Further investigation revealed all sorts of other problems with the flow
control.  It wasn't working properly at all.  Depending on the transmission
rate of characters (i.e. gaps between characters versus no gaps), and whether
or not simultaneous sending and receiving was in progress it would send
256 characters and then lock up, or send the first character, pretend to
send the next 255 then lock up, or work ok.

The "ST internals" (abacus) book describes how TOS handles CTS incorrectly
and this explains some of the symptoms, but not the incoming data corruption.

Is there anyone who knows enough to supply more detail and offer a fix?