[net.micro.amiga] more on serial port flow control

phil@scubed.UUCP (07/04/86)

I recently posted a note detailing my experience with flow control
on the Amiga serial port.  I had to hotwire pin 5 on my plotter to
pin 18 on the Amiga in order for the CTS handshaking to work.

Last night I was working on the Amiga and not using the plotter
so I did not power it on.  Guess what!  The machine would not 
kickstart until I unplugged the cable going to the plotter.
Turn the plotter on or unplug the cable and everything works fine.

After the machine is up and running, you still need to power on the
plotter or unplug the cable or whatever you are running will lockup.
This is true even if the application does not use the serial port.
Again, if I power on the plotter or unplug the cable all returns to
normal.

Do any of you understand what is going on here?

Phil

kim@mips.UUCP (07/07/86)

> I recently posted a note detailing my experience with flow control
> on the Amiga serial port.  I had to hotwire pin 5 on my plotter to
> pin 18 on the Amiga in order for the CTS handshaking to work.
> 
> Last night I was working on the Amiga and not using the plotter
> so I did not power it on.  Guess what!  The machine would not 
> kickstart until I unplugged the cable going to the plotter.

> Do any of you understand what is going on here?

Hmmmm ... pin 18 of the serial port (Amiga side) is listed as being
signal  INT2*  in Appendix-E of the Hardware Manual.  Since the signal
is an "active low" signal (the "*" in its name), I would guess that
with the plotter off (but connected), this line is being pulled down, and
is causing Interrupt2 to the processor to be asserted continuously.

With the plotter disconnected, the signal is most likely being pulled-up
(or at least floats high), and thus no rupt occurs.

I've no idea why your plotter needs its CTS hooked-up to INT2* to work
though.

/kim
-- 

UUCP:  {decvax,ucbvax,ihnp4}!decwrl!mips!kim
DDD:   408-720-1700 x231
USPS:  MIPS Computer Systems Inc,  930 E. Arques Av,  Sunnyvale, CA 94086
CIS:   76535,25

carolyn@cbmvax.cbm.UUCP (Carolyn Scheppner) (07/07/86)

In article <85@scubed.UUCP> phil@scubed.UUCP (Phil Cohen) writes:
>I recently posted a note detailing my experience with flow control
>on the Amiga serial port.  I had to hotwire pin 5 on my plotter to
>pin 18 on the Amiga in order for the CTS handshaking to work.
>
>Last night I was working on the Amiga and not using the plotter
>so I did not power it on.  Guess what!  The machine would not 
>kickstart until I unplugged the cable going to the plotter.
>Turn the plotter on or unplug the cable and everything works fine.
>
>After the machine is up and running, you still need to power on the
>plotter or unplug the cable or whatever you are running will lockup.
>This is true even if the application does not use the serial port.
>Again, if I power on the plotter or unplug the cable all returns to
>normal.
>
>Do any of you understand what is going on here?
>
>Phil

   I'm not a hardware type but here's my guess.  Pin 18 of the Amiga's
RS-232 port is documented as INT2* (normally high interrupt line).
Your plotter's pin 5 must be normally high, going low when it's buffers
are full, stopping not just serial transmission but whatever else
runs off INT2.  When your plotter is off, it is not holding pin 5 high
and grounds INT2*, freezing PORTS (8520A, external2) interrupts.

   I don't think this a good place to connect your pin 5.  What are the
ready and not-ready voltages put out by your pin 5 ?  There should be
a way to hook it to the Amiga hardware handshaking lines (CTS/RTS).
You will have to disable software (XON/XOFF) handshaking and enable
hardware handshaking using a program like setserial or Beta 1.2
Preferences.


-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Carolyn Scheppner -- CBM   >>Amiga Technical Support<<
                     UUCP  ...{allegra,caip,ihnp4,seismo}!cbmvax!carolyn 
                     PHONE 215-431-9180
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=