Date : Mon, 06 Aug 2007 22:01:56 +0200 (BST)
From : johan@... (Johan Heuseveldt)
Subject: Emulating Econet hardware?
Hi,
On Mon 06 Aug, Jules Richardson wrote:
> Alex Taylor wrote:
> > Would it be possible to emulate an Econet server and clock using a
> > PC's parallel port, and suitable software and cabling?
>
> I think the last time this came up the general feeling was that yes,
> it could be done - then things got bogged down with too many people
> starting a flamewar about how parallel ports are obsolete, and that this
> should be done with FPGAs/USB/FireWire/ExpressCard instead ;-(
>
> One of the more useful issues raised I think was the lack of Econet
> driver chips (68B45 from memory??) - I'm not sure what collective
Almost. It's a 6854 in 2Mhz > 68B54
6845 is the CRTC. Not sure if there was a B (=2MHz) version.
> thoughts were on finding sufficient numbers[1], emulating one with
> other off-the-shelf bits, or using some sort of programmed device for
> the emulation. I don't think the Econet chip was a particularly complex
> device;
I think it is.
Probably in the same region as FDCs?
(or a FDC being the simple one?! :-)
After all, it's an 'Advanced Data Link Controller' (ADLC)
> it was just more convenient to do it in one larger chip than a
> handful of common TTL/line drivers/whatever.
Probably needing a PCB as big as the Beeb itself?
Just guessing.
OTOH there is the SJ Research design - in its MDFS - with only a
Z80 SIO, and lots need to be done in software. I'm not familiar with
that serial device, so don't know how much it can do in hardware, and
what's left to be done in software.
It /is/ known that the MDFS is very fast, and I can fully confirm
that! :-)
Which makes it very intriguing: how can a software solution be
faster than its hardware version that it is emulating. Processor
speed is 6 Mhz ('B' versions of the Z80 family), which is certainly
not faster than a 2Mhz 6502. As I said, very intriguing!
> If the chip needs to be emulated and needs some sort of programmed device
> to do it, then it starts to make a "keep it simple, just use a parallel
> port" approach a little less viable anyway.
There are things which can be left out, like
* different size for data bytes; 5-8 bits,
as Econet always uses 8bits only.
* no need for loop control.
* no need for DMA
* Several configurations for special control fields at the start
of a frame/packet, which can be set to one or two bytes.
Econet only uses a single 8 bits 'Address' field (station number)
Necessary at least is
* zero bit insertion in the data bit stream,
so there are never more than 5 consecutive '1' bits, which serves
recognition of flag bytes, abortion, flag fill
* sychronise the bit data stream to bytes
* ignore rest of packet when instructed
(no interrupts occur, until the start of next packet)
* 3 bytes FIFO, both receiving and transmitting, keeping in sync with
* CRC calculation, and insertion as last two byte in the packet
* CRC calculation, and comparing with received last two CRC bytes
* flag filling between packets
(just at the top of my head, most likely incomplete)
> [1] I think I've got around 30 here, mostly attached to Master Econet
> modules, nearly all of which I don't have any use for.
Also good for A5000 and before, cutting the legs if really necessary.
(when installing a podule card directly above it)
I could use a few; will contact you by private email.
FWIW
greetings,
Johan
--
Johan Heuseveldt <johan@... >
aka waarland
The best place is a Riscy place
Why are there no fuchisa M&M's?