[sci.electronics] SW56/ISDN for Macintoshes??

jst@cca.ucsf.edu (Joe Stong) (09/30/89)

pasek@c10sd3.StPaul.NCR.COM (M. A. Pasek) and garyf@mehlville.ncsa.uiuc.EDU
(Gary Faulkner) are both interested in 56K baud and/or ISDN communication 
for the MacII or the Mac SE.  

This has my curiosity going.  I suspect the above named folks above want a
packaged solution, however.

It was my understanding that appletalk used the regular serial ports on
ANY macintosh to do 256K baud transfers.  The serial port chips are easily
capable of 56 or 128 K(ISDN) baud, though I'm curious whether they are
"settable" to exactly 56K baud using the internal clocks.  The mac is
capable of getting external clocking, possibly with some minor change
(the people who do FastTalk AppleTalk do this)

 All you may need is a cable if you're using a 56K baud modem that can
supply a clock signal.

ISDN would probably be harder, since the stream would have to be deformatted.
The D and B chanels all scrambled on the same wires, and you'd have to
pick out the bits that belonged to you, it'd have to be pretty fast
software.  Hardware, albeit simple hardware might help to sort one of
the B channels and the D channel to the two serial ports.

My understanding is that 8250's with the standard crystal that they use
in IBM PC's can only hit 57.6K baud, and not 56K baud, that it's a 
slight mismatch in speeds.  Is this true?  Does the same problem exist
with the serial ports on a mac?  Do the mac chips have any FIFO?

Can the Mac serial ports be read via DMA?  

Will someone with more solid knowledge of this clarify, please?

amanda@intercon.com (Amanda Walker) (10/02/89)

In article <2439@ucsfcca.ucsf.edu>, jst@cca.ucsf.edu (Joe Stong) writes:
> I'm curious whether they are
> "settable" to exactly 56K baud using the internal clocks.  The mac is
> capable of getting external clocking, possibly with some minor change
> (the people who do FastTalk AppleTalk do this)
> 
>  All you may need is a cable if you're using a 56K baud modem that can
> supply a clock signal.

Doing 57600 baud async is no problem with the standard Mac serial ports.
I'm not sure if you can get 57344, which would be exactly 56 * 1024.
57600 seems to be what most people mean by "56K baud", though, since it's
exactly 3 * 19200.  You should be able to run sync at up to 1mbps,
although you won't have much processor time left :-).

--
Amanda Walker
amanda@intercon.com

murray@jumbo.dec.com (Hal Murray) (10/12/89)

There are two limits that I know about for the Mac serial ports: software
and hardware.

If you use the standard driver, the interrupt overhead limits you to ~50K
bits/second total throughput on all active lines. I think that's in the
hardware book. I have a hack test program that could mostly keep up in
send-only at 56K.  When sending and also receiving what it was sending
(via a paper clip in back) it only got 30K even though the hardware was
still running at 56K.

The trick for going faster than that is to poll rather than take an
interrupt on each character. That's how AppleTalk does it. I can get 400K
bits/sec using code written in LSP. (Disable interrupts to avoid
missing characters.)

I think you could poll over 1 megabit/second, but the SCC won't go that
fast, even with external clocking. New data sheets contain an abscure
footnote that limits the data rate to 1/4 of pClk. PClk is nominally
3.672MHz so you might get 900KHz.

3.672MHz is slightly less than 1/2 of the Mac processor clock (7.8336
MHz), so something fishy is going on.  I've seen slight jitter on a scope
when watching a single bit produced from the internal clock. I assume
somebody is stretching cycles for memory refresh or display or... I don't
know what the actual limit is, but I'll bet it's below 3.672MHz/4.