Re: CBM D9090 Update

From: Ethan Dicks <>
Date: Tue, 8 Dec 2009 15:20:27 -0500
Message-ID: <>
On 12/8/09, Didier Derny <> wrote:
> Hi,
> SASI is really easy to emulate,

Abstractly, yes.

> SASI is really simple no heads, no tracks, just a continuum of blocks 0 ..
> size of the disk
> For the rest it's almost a simple parallel port.

Sure... same as SCSI 1 (which isn't much more complicated than SASI).

> I'll have to check the firmware of the 9060/9090 to see what command need to
> be implemented
> (probably 4 or 5)    status, inquiry, read, write, format

That is where I fell into the "not enough time to follow up" pit.

Knowing which commands are created is really the hard part.  I don't
think SASI supports INQUIRE, which is why there is only a jumper for
the number of heads the controller is expecting - the controller has
to "know" somehow, and in the case of the D90x0 drives, it's built
into the code and into a couple of tables.  That jumper is used to
choose between two options.  I did get that far into the code to see
that bit get read.

READ and WRITE are going to be straightforward since the drive is so
"small" compared to the max drive size (24-bit block address?), but
FORMAT is a big question in my mind - what _is_ the DOS card sending
to the SASI controller in the D90x0 drive?  It should be easy to find
in the code, since it's attached to the "(N)ew" code, but to my
knowledge there isn't a well-commented disassembly of the DOS board
code out there anywhere.  Also, that code will be different between
Rev A and Rev C ROMs, just so you know (45 minute format vs 2 hours on
the same-sized drive).

> I'll write a short documentation on SASI.

That would be great.  There's quite a bit of stuff on ancient SCSI,
but not anywhere near as much as documentation on SASI since it wasn't
as widely deployed before becoming more standard.


       Message was sent through the cbm-hackers mailing list
Received on 2009-12-08 21:00:04

Archive generated by hypermail 2.2.0.