<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Sat, 10 Jan 2004 18:32:35 +0000
From   : Richard Gellman <splodge@...>
Subject: Re: IDE Interface for BBC

Philip Blundell wrote:

>On Sat, 2004-01-10 at 04:48, Jonathan Graham Harston wrote:
>  
>
>>I have a bazillion IDE drives on the shelf :)  I don't know how hard it is
>>to find suitable SCSI/SASI drives for the Acorn card, but I understand
>>it's hard to find Acorn cards, and I haven't been able to track down a
>>circuit diagram for it.
>>    
>>
>
>I have a couple of Acorn SCSI cards here, but no schematics for them. 
>The circuit doesn't look very complicated, though, so if I find myself
>at a loose end I could have a go at tracing it.
>
>I'm not sure what the situation is with drive compatibility either,
>though.
>
>p.
>
>
>  
>
The circuit diagram for the Acorn SCSI Host Adapter card is in the 
Winchester Service Manual. This was (last I looked) on the BBC Lives! 
site under "documentation". I haven't looked to see if its still there 
though.

The card itself is basically a glorified bus buffer with a few 
flip-flops into to simplify the handshake process, along with the 
obligatory signal cleaning/1Mhz Bus Address decode logic. All the 
components are off-the-shelf, and the chips are all from the 74 series. 
The remainder are 2.2K, 330ohm, and 220ohm resistors, a 22uF 
electrolytic cap, and a 47nF ceramic cap. (according to the circuit 
diagram).

As for SCSI compatibility/drive availability, the ADFS issues only 3 
commands in normal usage: 0x1B (initialise), 0x08 (read) and 0x0A 
(write) [1]. All drives should, by SCSI compliance, support these 
commands. Formatting the drive may be interesting, but does not actually 
involve a SCSI format command (this is only needed for a low-level 
format (ick) [2]). You should only need to blank all the sectors, and 
write the initial catalogue and free space map (be sure to get the 
checksums right or ADFS does complain). Sniffing around ebay should find 
you a few small-capacity drives. Its not like you need an 80Gb monster 
to run on a BBC :) (Plus, you WILL be waiting for hell to freeze while 
you blank it...).

When funding allows, I was considering building this board myself and 
giving the 500Mb SCSI drive I have lying about a go. If I ever get 
around to this, I shall divulge results.

-- Richard Gellman

[1] An article in the Micro User from '87 concerning the ADFS and its 
capabilities made mention of OSWORD &72 (ADFS version of &7F, the direct 
access function), stating that &08 and &0A were the read and write 
commands. The article said "there are other commands available, but no 
documentation at this time. But surely it is no coincidence that there 
are the lower four bits of the OSWORD &7F commands?". As it turns out, 
it was a coincidence. The byte in question in the block is the SCSI 
command to execute, it is followed by the SCSI paramters, even when 
accessing the floppy disk.

[2] This is probably well known, but ADFS uses 256-byte sectors, where 
as most SCSI drives are supplied formatted with 512-byte sectors. 
Attempting to access these drives will cause the BBC to lock-up, as the 
ADFS is particularly lazy, and will receive the first 256 bytes, then 
wait indefinitely for the SCSI bus to change to "status block out" 
phase, while the drive, in equal laziness will wait indefinitely for an 
ACK to byte 257.

To get around this, you will need to start ADFS in "Nodir" mode (see 
Ref. Man. Part 1 for M128 on *CONFIGURE Nodir, and *FADFS) and use a 
custom program with OSWORD &72 to send SCSI format commands specifying 
256 byte sectors.
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>