Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #1920

Re: Zilog 85c30 RS-422 on Apple IIGS

Newsgroups comp.sys.apple2.programmer
Date 2015-10-25 20:12 -0700
References (7 earlier) <1mcp1bw.15r8pdjri3bn4N%dempson@actrix.gen.nz> <a8273659-0d62-418d-b2a0-42354401c9ed@googlegroups.com> <1mcpkto.1t87qqt1b36pknN%dempson@actrix.gen.nz> <d0332b2d-25a5-4b64-9211-ab9d53892aff@googlegroups.com> <1mcwnnq.133vugw1sp8ft0N%dempson@actrix.gen.nz>
Message-ID <cb72a0e2-2df2-4d89-9460-d6dae5c2dd2d@googlegroups.com> (permalink)
Subject Re: Zilog 85c30 RS-422 on Apple IIGS
From John Brooks <jbrooks@blueshiftinc.com>

Show all headers | View raw


On Sunday, October 25, 2015 at 7:25:22 PM UTC-7, David Empson wrote:
> John Brooks wrote:
> 
> > On Thursday, October 22, 2015 at 12:08:12 AM UTC-7, David Empson wrote:
> 
> [...]
> 
> > > Phonenet or LocalTalk would impose half duplex (can't transmit and
> > > receive simultaneously) but I expect you'd want to do that anyway.
> > 
> > Yeah, I don't think I want Phonenet due to it's bit-synchronous overhead,
> > complexity and 1/16 PCLK max speed (ie 3.686MHz/16=230K baud).
> > 
> > > You need to use the flow control output signal as a transmit enable.
> > 
> > You mean via CTS? Why is that? I thought in byte-synchronous mode I could
> > use WR5 D1 (RTS) for transmit control (if transmit throttling is even
> > needed) and have the receiver use hunt mode to enable the receiver.
> 
> I was talking about IF you used Phonenet or LocalTalk adapters, because
> their hardware is designed as a multi-drop bus with the output flow
> control signal being used to enable the transmitter. (Or am I
> misremembering? I just recalled something about the transmitter being
> disabled which results in TxD+ and TxD- being grounded rather than just
> under +/- 5V.)
> 
> > > No external clock will be possible, because the GPI pin is not connected.
> > 
> > Can you elaborate? Isn't GPI just a General Purpose Input and connected to
> > the Z8530 DCD input? I've been looking at using an external clock via HSKI
> > which is connected to the the Z8530 TRxC input.
> 
> Again - context. I was talking about IF you used LocalTalk or Phonenet
> adapters, because they don't have anything going to the GPI pin.
> 
> > > The Mac, Workstation Card and IIgs implementations all use a Z8530 SCC;
> > > the Workstation Card has a dedicated 6502 processor to offload the time
> > > critical work, but the IIgs was fast enough to keep up (only just - it
> > > required special implementation in the interrupt handler).
> > 
> > True, but looking at Apple's implementation, it appears that the GS serial
> > code was largely the same as on the //c & Workstation card.
> 
> The //c never got AppleTalk: it appears an attempt was made but
> abandoned, since there was a partial implementation in the original
> firmware but it got deleted in subsequent updates.
> 
> It would have required external hardware with a similar architecture to
> the Apple II Workstation Card.
> 
> > Probably because it was more engineering effort to maintain a 65816 & 6502
> > version. So there is definitely an opportunity for the GS SCC
> > communication code/speed to be better than what Apple released.
> > 
> > > If the device at the other end is compatible, using HDLC framing with
> > > automatic CRC handling in the SCC will make error detection easier.
> > 
> > Why HDLC? Isn't that a bit-synchronous mode which will have extra bits
> > inserted? I was looking at using byte-synchronous with an external clock
> > and CRC-16 calculation enabled.
> 
> Personal preference. I've been using HDLC at work since the late 1980s.
> Works well over a wide variety of hardware. Probably overkill if you are
> just going short distances.
> 
> > > If you are making your own hardware at the other end, another option to
> > > consider is to put a Mini-Din-8 on your device, and use a standard
> > > Mini-Din-8 to Mini-Din-8 cable (e.g. the one used with an ImageWriter
> > > II).
> > 
> > Yes, I think I'll need to make a custom cable to go from DB9 to mini-Din8.
> > I think my next step is looking at USB to serial bridge chips to see which
> > ones are a good fit for supplying an external clock on HSKi.
> > 
> > Good stuff Dave. Thoughts?
> > -JB
> > @JBrooksBSI
> 
> 
> -- 
> David Empson
> dempson@actrix.gen.nz

> Again - context. I was talking about IF you used LocalTalk or Phonenet
> adapters, because they don't have anything going to the GPI pin.

Ah right.

> The //c never got AppleTalk: it appears an attempt was made but
> abandoned, since there was a partial implementation in the original
> firmware but it got deleted in subsequent updates.

Right, but it looks like the code to interface with the Z8530 originated as //c 6502 which then migrated to the //gs serial port driver and then to GS localtalk. While localtalk has a lot more 65816 code than the serial driver, there appears to be a lot of shared 6502 architecture and implementation between the serial port driver and the localtalk driver.

> Personal preference. I've been using HDLC at work since the late 1980s.
> Works well over a wide variety of hardware. Probably overkill if you are
> just going short distances.

From what I can tell from the Z8530 user manual, the synchronous modes (SDLC/HDLC) are designed for clock+data on one line with the receive clock reconstructed via the SCC PLL. The two drawbacks of this config for high-speed SCC serial communication(AFAIK):

1) There is a limit to the number of contiguous set bits (6 I think) so 0 bits will be automatically inserted periodically, reducing bandwidth.

2) Because the bit-sync modes expect the clock to be reconstructed via the SCC PLL, they max at 1/16 PCLK vs 1/4 PCLK for the byte synchronous modes.

-JB 
@JBrooksBSI

Back to comp.sys.apple2.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-19 17:59 -0700
  Re: Zilog 85c30 RS-422 on Apple IIGS David Schmidt <schmidtd@my-deja.com> - 2015-10-20 00:09 -0400
    Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-19 21:59 -0700
      Re: Zilog 85c30 RS-422 on Apple IIGS David Schmidt <schmidtd@my-deja.com> - 2015-10-20 01:34 -0400
        Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-19 23:11 -0700
          Re: Zilog 85c30 RS-422 on Apple IIGS David Schmidt <schmidtd@my-deja.com> - 2015-10-20 12:25 -0400
            Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-21 14:58 -0700
              Re: Zilog 85c30 RS-422 on Apple IIGS dempson@actrix.gen.nz (David Empson) - 2015-10-22 13:05 +1300
                Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-21 20:32 -0700
                Re: Zilog 85c30 RS-422 on Apple IIGS dempson@actrix.gen.nz (David Empson) - 2015-10-22 20:08 +1300
                Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-25 18:09 -0700
                Re: Zilog 85c30 RS-422 on Apple IIGS dempson@actrix.gen.nz (David Empson) - 2015-10-26 15:25 +1300
                Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-25 20:12 -0700
  Re: Zilog 85c30 RS-422 on Apple IIGS D Finnigan <dog_cow@macgui.com> - 2015-10-25 19:05 +0000
    Re: Zilog 85c30 RS-422 on Apple IIGS John Brooks <jbrooks@blueshiftinc.com> - 2015-10-25 20:33 -0700
      Re: Zilog 85c30 RS-422 on Apple IIGS D Finnigan <dog_cow@macgui.com> - 2015-10-26 15:25 +0000

csiph-web