[iyonix-support] Re: Bugs in SCSIFS?

  • From: John Ballance <jwb@xxxxxxxxxx>
  • To: iyonix-support@xxxxxxxxxxxxx
  • Date: Thu, 21 Jun 2007 16:45:21 +0100

Hi

davehigton@xxxxxxxxxxxxx wrote:
Quoting John Ballance <jwb@xxxxxxxxxx>:

hi

davehigton@xxxxxxxxxxxxx wrote:
What happens when a drive with a >2GB partition is offered around?
Does it become available for block/sector access via FileCore%SCSI?

if memory serves: it is treated as if it is a single file .. hence the (current) 2gb filecore file size restriction 'gets in the way' I don't remember any attempt to trap this situation..

various strategies have been considered, varying from allowing dosfs to have direct disc access in cases where it is happy it is 'talking' to a disc, not a file on disc, to a system that 'slices' the dos disc image into a sequence of 'small enough' files, much as cdvdburn does for dvd iso images.

I've been working on an application that will allow navigation up and
down a directory structure of a memory stick, and will allow saving
of files from it.  It's mostly a test bed to see if I understand FAT
formats, but it takes me part way to understanding what DOSFS would
need to do to deal with devices >2GB.  My app in principle would work
on devices up to the limit of a SectorOp SWI, but it relies on the
SectorOp SWI's being available for the particular device, which ATM
implies that the device must be mounted.

It seems we're so nearly there.  I assume that DOSFS must interface
to FileSwitch, since the way a DOS drive is operated bears little
resemblance to FileCore.  So it must already do all we want, except
that it can't operate on big enough devices.

But all that a DOSFS needs, in principle, is a SectorOp read and a
SectorOp write.  Clearly we have lower layers that provide them.
What's nice about using them is that you don't have to write a handler
for a USB 8/6/80 protocol (for example); it's already there and tested.

It just looks like such a narrow gap to bridge...

you have the raw scsi commands available through scsiop swi .. *devices is a raw scsi device listing command that uses the scsidriver swis with no bearing on scsifs.. i.e. if you know what you want to do on the device, you get to the underlying scsi device and use these swis in it ..

the 8/6/80 etc protocol is 'normalised' between these swis and the device..

enjoy

John

btw.. more on this in the part of iyonix.com/32bit that details the mass storage stuff




Presumably a key element here is what Service_IdentifyDisc receives
and gives.  The other one (chronologically, but more important in
terms of deficiencies) is step 10 on PRM 2-322.

Dave
---
To alter your preferences or leave the group, visit //www.freelists.org/list/iyonix-support
Other info via //www.freelists.org/webpage/iyonix-support


--
John Ballance        jwb@xxxxxxxxxx
Free Utilities? -> http://www.rosery.net
http://www.johnballance.co.uk
---
To alter your preferences or leave the group, visit //www.freelists.org/list/iyonix-support
Other info via //www.freelists.org/webpage/iyonix-support

Other related posts: