Apple LocalTalk interface box

Good news, works fine between the new LC475 and the Performa 5300.
Now I have working system to measure on with the logic analyzer.

My first ideas :
- it's slow to todays standards, but for the 90 with only small files and minimal extra HW needed I would have loved it.
- Also the slave computer gets slower, even on the LC475.

My original plan was to use the external clock option (or patch the mainboard clock to the 85C30) to increate the speed x3 or x4,
but this will probably only increase the load on the CPU, making the system even slower ?
AppleTalk was cheap, but without any ram buffer nor DMA support, it needs the CPU to often to intervene.
Just within the past day or two, I came across an extension or some software that allowed DMA transfers for AppleTalk. But now after reading your post, I don't remember where it was I found it.
 
My first ideas :
- it's slow to todays standards, but for the 90 with only small files and minimal extra HW needed I would have loved it.
- Also the slave computer gets slower, even on the LC475.

My original plan was to use the external clock option (or patch the mainboard clock to the 85C30) to increate the speed x3 or x4,
but this will probably only increase the load on the CPU, making the system even slower ?
AppleTalk was cheap, but without any ram buffer nor DMA support, it needs the CPU to often to intervene.
External clock is probably the easiest and best choice:
https://68kmla.org/bb/threads/localtalk-but-faster.45615/post-505309

The PCLK could be used, but there's a couple issues with that:
- Different Macs have different PCLKs. Maybe only Power Macs had PCLKs in the >10MHz range.
- The PCLK has to go through the baud rate generator which reduces the maximum bit rate by a lot. You would need > 4 * 3.678 MHz to exceed the 230.4 kbps option allowed by using the 3.678 MHz from the RTxC pin.

The external clock can easily do 1 Mbps because both machines will use the same clock and therefore can use the X1 Clock Mode instead of X16 or X32.

It might be interesting to see if you can output the transmit clock TRxC to one of the pins (HSKi?). Then one Mac can be the source of the external clock and they can use X1 mode. It would require special cables.
 
Just within the past day or two, I came across an extension or some software that allowed DMA transfers for AppleTalk. But now after reading your post, I don't remember where it was I found it.
I know the AM85C80 SCC+SCSI chip also supports DMA for the SCC (and the SCSI), but this signal runs only to the GLUE logic VYI6508-2 gate array. Is there any documentation available about this chip how to program it please ?
 
External clock is probably the easiest and best choice:
https://68kmla.org/bb/threads/localtalk-but-faster.45615/post-505309

The PCLK could be used, but there's a couple issues with that:
- Different Macs have different PCLKs. Maybe only Power Macs had PCLKs in the >10MHz range.
- The PCLK has to go through the baud rate generator which reduces the maximum bit rate by a lot. You would need > 4 * 3.678 MHz to exceed the 230.4 kbps option allowed by using the 3.678 MHz from the RTxC pin.

The external clock can easily do 1 Mbps because both machines will use the same clock and therefore can use the X1 Clock Mode instead of X16 or X32.

It might be interesting to see if you can output the transmit clock TRxC to one of the pins (HSKi?). Then one Mac can be the source of the external clock and they can use X1 mode. It would require special cables.
Thanks for the link, I was wondering how to set the external clock option and found something in that thread.

It's input only (differential buffer in-between), the signal also need a boost to be used by multiple other Macs.

I would go for 1 external 1MHz clock and a good driver chip, it doesn't even have to be a xtal oscillator, a simply clock generator chip will also work and the frequency can be changed on the fly for max speed or reliability.
 
Reading the "Guide_to_Macintosh_Family_Hardware_2nd_Edition_1990" I found some interesting info :

1. The /W/REQA signal from the SCC (only option for DMA) on the Plus, SE and SE/30 goes to PA7 of the VIA chip,
So DMA is not possible on the old Macs. Only on the IIfx they go to the IOP.
This PA7 pin is used the check for incoming data during disk access, as interrupts are disabled by it.
Loss of data by AppleTalk during disk access is possible, increasing clock speed will not help.

2. Synchronous communication is only supported from SE and up, not on the Plus.

3. AppleTalk is a synchronous protocol, but the AppleTalk Driver operates the SCC in asynchronous mode ???? Need to check this.

4. The max speed is 500Kbaud on Plus and SE models in synchronous mode, on Mac II this is 900Kbaud.

In conclusion : Max speed increase is 3x, or only 2x if I also want to support Plus and SE models.
My LC475 is already slower at normal speed, so on a SE or Classic it will probably be worse.
 
3. AppleTalk is a synchronous protocol, but the AppleTalk Driver operates the SCC in asynchronous mode ???? Need to check this.
Asynchronous in this case just means that the sender and receiver don't share a clock? They must use the x16 or x32 or x64 clock mode to recover the clock from the receiver. They don't have a start bit or stop bits? They use a SYNC character?

I'm adding logging to DingusPPC to show how the SCC registers are modified for AppleTalk (used in Mac OS) vs normal asynchronous transmission (used in Open Firmware or terminal app in Mac OS).

I would go for 1 external 1MHz clock and a good driver chip, it doesn't even have to be a xtal oscillator, a simply clock generator chip will also work and the frequency can be changed on the fly for max speed or reliability.
I used a 555 timer with potentiometer to get 1 Mbps for a Mac serial port to Sony PlayStation controller/memory card/Multitap adapter.
 
Back
Top