> Laurens Holst wrote:
> > ...
> > How to access the DISKROM,
>
> use entry #4010 DISKIO to read/write LOGICAL sectors (=sectors in a
> partition) Info about parameters can be found on the net.
> Important: one of the error codes is 'medium changed' (24 I think), then
> you must retry reading the sector.
>
> Normally DISKIO only supports 16bit sectornumbers. MegaSCSI and new
> IDEbios (to be released soon) supports 23bit sector access. (more info:
> see IDEbios #2.0 docs)

At the same address? Well, I'll just review the docs.
Hmmm... they are not on www.msx.ch!!!

Could you release the docs???
(or send them to me, [EMAIL PROTECTED])


> You will also need some info on drivenumbers; if you type SCANDISK C:,
> then you will have to convert C: to the correct diskromslot and local
> drivenumber. (in DOS2 c: can even be redirected to another drive by
> ASSIGN!) See drivenum.txt for more info. (I believe long long time
> ago, I've sent it to this list)

The DPB (Disk Parameter Block) which can be retrieved through BDOS function
#31 has got a byte to indicate the Physical drive number.


> > and how to read absolute sectors
>
> no need for your program to read absolute sectors

I mean just reading sectors. The Dos manual calls the routines "read/write
absolute sector", so that's why I thought it was called that way.


> > from a drive (not from the entire harddisk please because then I also
will
> > have to process the partition table).
>
> not necessary; btw... you can't even know if the medium you are
> accessing has a partition table !

Cool.


> > - And to avoid problems with FAT16 etc. (Improve has to be rewritten for
> > that, by the way), how can I recognize the FAT system??? I bet I'll have
to
> > read the correct value from the Dos DPB (Disk Parameter Block)
function...
> > What value should I check for? I can guess it but I'd like to hear it
> > 'officially', then I'll be sure about it.
>
> To check for FAT12 or FAT16:
> read logical sector 0 with DISKIO (=bootsector)
> and check at offset #011/2 (number of dir.entries): If it is #0200, then
> it is FAT16. Other values are FAT12. This is the easy way Okei checks
> for FAT16.

Is it not only the easy way, but also the correct way???


> Then you must also know how many sectors there are for this partition.
> If FAT12, use the value at offset #013/4 (16bit)
> If FAT16, use the value at offset #020/1/2/3 (32bit)

Nah, I just wanna give a message "FAT16 not supported yet"...

By the way, is the Dos GetDPB function also patched????


> Now all you have to do, is to read/(write?) all sectors to see if they
> are ok.
>
> Also useful: read/write sectors preferably in page 2 or 3 (#8000-#FFFF).
> Reading/writing in page 0 or 1, can be really slow because of complex
> slotswitching done by diskroms in that case)

Get the point, thanks.


~Grauw


--
>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<
 email me: [EMAIL PROTECTED] or ICQ: 10196372
      visit my homepage at http://grauw.blehq.org/
>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<


****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED]
and put "unsubscribe msx [EMAIL PROTECTED]" (without the quotes) in
the body (not the subject) of the message.
Problems? contact [EMAIL PROTECTED]
More information on MSX can be found in the following places:
 The MSX faq: http://www.faq.msxnet.org/
 The MSX newsgroup: comp.sys.msx
 The MSX IRC channel: #MSX on Undernet
****

Reply via email to