Date : Tue, 06 Jul 2004 11:57:13 +0000
From : Jules Richardson <julesrichardsonuk@...>
Subject: Re: Acorn Winchester unit
On Tue, 2004-07-06 at 10:31, Richard Gellman wrote:
> Well now. I have something you may well be interested in.
>
> A while back, I construted a device consisting of a butchered parallel
> cable, a 50-way SCSI ribbon, and a 25-way D connector. I also put
> together some DOS software to use it. It can connect to an ADFS
> formatted drive on a SCSI interface, and using very basic commands
> extract the information thereof, and even skips over the "free spaces".
How did you manage that then? I had a look at this a few weeks ago and
the real problem is lack of output lines on the parallel port (assuming
8 bit transfers anyway). 8 bits are needed for bidirectional data,
whilst the SCSI 'incoming' control lines can make use of input control
lines on the parallel port, so that bit's easy.
Problem is, there's only four output lines on the parallel port left to
do any control with. I figure I need two lines via a 2-to-4 line decoder
to select which 'register' you want (output and latch data onto SCSI
data bus, read data from SCSI data bus, output and latch to control bus,
or idle).
That leaves two output control lines left on the parallel port to
control the selected register with - latch data, or switch register
outputs between normal and high impedance state. Given that a reset
line's really needed too in order to make sure the interface device is
in a known state, it all gets a little tight.
Of course in a 4 bit mode things are a bit easier as there's suddenly an
extra 4 output lines to use. But that really would be slow!
I think it is do-able in 8-bit mode, just - but it's a little more
complex than such as Acorn's BBC SCSI interface just because there
aren't really enough control lines on the parallel port to do things
simply.
I think I ended up with a bit of delay logic on the interface itself
between a register latch operation and the drop to low-impedance state;
that way I just needed one line to control the register rather than two
as I could combine the latch and enable operations in one go, with the
delay inbetween to allow for propogation delays.
Messy, but it leaves the all-important line free to reset the D-types as
necessary which control the latch operation (the latch ICs aren't driven
by a clock pulse, but by a logic level - so they need to be left in a
certain state whilst other things are going on, hence the need for
D-types to retain state)
> Tis a tad slow mind. Takes about a day to do 100Mb.
Still be interested to see a schematic though. The Torch drives are all
40MB I think, so half a day or so isn't the end of the world.
My other option's to use an ancient SCSI card and hack the Linux drivers
for it to disable the identify (the Omti boards support standard SCSI
commands otherwise) - problem there is that all I have spare are Adaptec
cards, and as the OS drive on my PC which I'd host this on is via an
Adaptec, I don't really want to go hacking around with the driver source
:-)
Plus I quite like the idea of a parallel port solution - speed isn't a
problem, but being able to quickly use it on different machines would be
nice.
cheers,
Jules