On Jan 26, 2021, at 1:24 PM, Peter Coghlan via cctalk
<cctalk at classiccmp.org> wrote:
I wrote:
The other option would be synchronous links, which would enable connections
to DMC11 or the like at speeds up to 1 Mb/s. But synchronous comm devices
that connect to modern computers aren't so easy to find, though I have seen
a few.
Not what would be called modern these days but I managed to run across two
MicroVAX 3100 machines with DST32/DHT32 synchronous serial interfaces in them
plus two V.24 and one each of V.35 and X.21 cables that will plug into them.
With some help from the people here, I managed to get the machines talking to
each other using a null modem between the two V.24 cables. I also have two
nearly identical syncronous modems, one with a V.35 interface and another with
an X.21 interface but I have not managed to get these to talk to each other,
probably because they can't be configured to match any of the speeds the
DST32/DHT32 interfaces can do.
Forget I said anything. the DST32/DHT32 won't do anything like 1 Mb/s.
Why do you want to go so fast?
1 Mb/s is the top speed of the DMC with the coax local "integral modem"
connection. I don't know if the real modem card could go that fast. Probably not;
the top speed requires special microcode. But the DMR, with a faster engine, can do 1
Mb/s without trouble. I suspect that if you take the modem flavor of the DMR and manage
to clock those signals at 1 MHz you can indeed send that fast. Of course, RS232
officially isn't rated anywhere near that high (9600 I think is the official limit).
Other physical links like V.35 or RS422 were used at the time to go faster. In every
case, you can usually get away with going well over the limit if the cables are short
enough, and especially if the cables are better quality than the minimum. For example,
the DMC/DMR local connection is specified to use triax, but it wouldn't surprise me at
all if Cat 5 Ethernet twisted pair cable works just as well.
The main question for new work is what people have out there to connect to. The only
thing I have is a Pro. That has a comm port with a USART, which will do sync just fine
but tops out at 9600 bps or so due to having a tiny FIFO. That's RS232. I have no
DMC or DMR or anything else fast in my collection.
Thanks for the pointer to the Z85C30. Nice chip but it costs more than an Arduino (!); I
was thinking of a software-only solution if possible.
Mattis, thanks! That's an implementation along the lines I was thinking. If yours
can get close to 1 Mb/s, chances are one could get all the way there with the Arduino Itsy
Bitsy M4, that's a 120 MHz ARM chip (Cortex M4). It has USB built-in. I'll study
your code; that approach of using a fast loop for consistent reliable timing matches what
I was thinking.
DDCMP is a bit harder because it's normally full duplex. The framing is different but
no harder, I think. And I was thinking of leaving the protocol state machine to the host,
so the microcontroller would only do framing -- deliver completed good frames to the host
without interpretation.
paul