[Coco] CoCo SDC weirdness

Darren A mechacoco at gmail.com
Wed Mar 1 17:01:50 EST 2017

On Wed, Mar 1, 2017 at 12:47 PM, Tim Fadden wrote:

> Don't get me wrong, this is not a complaint, I love me sdc cards.
> I have been having the following symptoms/features?
> I have two scsi drives attached, and use the floppy do boot into nitros9,
> and the scisi is the /dd device.
> This works, and I can use the floppies, SDC, and drivewire.
> So I was thinking it would be nice to be able to boot off of the sdc card
> the same way.
> I took a 40tk nitros9 dsk image and used deldir to clean off the files.
> Then I used the custom build script/bootlists minus the format sdc doesn't
> like that. :-)
> Ok, the sdc dsk image gets created with no problem, and I am able to boot
> from it.
> It changes over to the /dd (scsi partition) I can access the scsi, sdc and
> drivewire.  But when trying
> to access the floppies it accesses the sdc instead.  taking a look at the
> device descriptors of
> /do and /sd0 everything looks correct.
> Perhaps it is because the sdc card never had a "drive 0,off" command?
> Is there a way do do this via the notros9 sdc, sdrive, or sdir command?
> It seems that using the sdc command causes the floppies to revert to the
> sdc card also.
> do you think this is a bug/feature, or am I doing something wrong?

The issue has to do with the fact that the floppy driver is not "MPI
aware".  The floppy driver just assumes that whichever MPI slot contains
the floppy controller will be active when the driver gets called.

The SDC driver attempts to remedy this during its initialization routine by
scanning the MPI slots looking for a floppy controller.  If found, the SDC
driver leaves the slot containing the floppy controller active so that any
calls to the floppy driver should access the real floppy disks.  Whenever
the SDC driver is called to do I/O, it saves the currently active slot,
activates the slot containing the SDC, performs the I/O operation and then
restores the active slot to what it was previously.

Unless some other process is activating the SDC slot for some reason
without restoring the floppy controller slot when done, I don't know how
the mix up is occurring.

- Darren

More information about the Coco mailing list