Re: int13 func05 >8G




"Boba" <spamtrap@xxxxxxxxxx> wrote in message
news:1165039412.712265.226870@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Benjamin David Lunt wrote:
...
However, if you would like, you may write F6h to each byte of
each unused sector using the BIOS int 13h extensions. I believe
the service is 43h.

Hi, Ben;
this is what i do: format the 1st track and then copy it to the rest of
the disk.

Again, no need to format the sector(s). This is what I would do, if
I were the "format" the partition to a FAT partition:

1. Create and write the (partition) boot sector to the 1st sector
of the partition.
2. Calculate the size of the FAT, mark the first two entries, the
write the FAT to the disk.
3. Write it again for the second copy
4. Now I would write F6h's (or zeros) to each sector after this
until end of partition.

However, if you are just updating software that already did a format
and you are just modifying for larger disks, this should need be
neccassary.

My guess is you have software that actually called the BIOS format
service for the partition, and now the service won't handle the
larger disks. I would modify the code to see if it is a floppy.
If so, continue with the original source. No floppy is larger than
8 gig. If it is a hard drive, just return. No need to do anything
to the drive. However, you could write F6h's to the sector in
question.

(does it matter if it's F6h or just zeros; can't recall where F6's
comming from?)

If I remember correctly, this is from the FDC. It would write F6h's
when formatting the drive. I should know why, I did a lot of work
on the FDC hardware once. I just don't remember. It has been a while.

The question still is: is modern BIOS aware of HD firmware? Boba.

The answer is: The BIOS was created so that there was no need to
be aware of the HD firmware. I take that back, a specific BIOS
for a specific machine may be aware of the HD firmware, but the BIOS
was created so that the OS did not have to worry what kind of HD
firmware was present.

If you have the source to the original app in question and can
find where the FORMAT service is being called, I would check for
the type of disk present. If a floppy continue, no other modifications.
If a hard drive, the simply return. This would add maybe 6 lines
to the original source.


mov ah,05h
mov cx,xxxx
mov dl,xxxx
cmp dl,2
jbe short continue_with_org_source
mov ah,return_code
clc
ret
continue_with_org_source:
int 13h

This doesn't actually check for the type of disk in the drive, but
is a simple way of "fixing" the problem. You could add a "det_disk_type"
routine to make sure.

Ben

--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Forever Young Software
http://www.frontiernet.net/~fys/index.htm
To reply by email, please remove the zzzzzz's

.



Relevant Pages

  • Re: [SLE] Yast gets incorrect hard disk size during install
    ... >>format as well as partition the HD. ... Linux wants the BIOS to be in control of the hardware but what almost ... everybody who installs M$ does is answer YES to the question in the BIOS ... the first 256 bytes of the partition. ...
    (SuSE)
  • FreeBSD 4.4-REL to FreeBSD 4.8-STABLE upgrade problem.
    ... parameters extracted from in-core disklabel are: ... Figures below won't work with BIOS for partitions not in cyl 1 ... BIOS sector numbering starts with sector 1 ... The data for partition 1 is: ...
    (freebsd-questions)
  • FreeBSD 4.4-REL to FreeBSD 4.8-STABLE upgrade problem.
    ... parameters extracted from in-core disklabel are: ... Figures below won't work with BIOS for partitions not in cyl 1 ... BIOS sector numbering starts with sector 1 ... The data for partition 1 is: ...
    (freebsd-stable)
  • Re: cannot see Windows after installing FreeBSD
    ... BIOS sector numbering starts with sector 1 ... The data for partition 1 is ... cyl 786/ head 127/ sector 63 ...
    (freebsd-questions)
  • Re: fdisk question (long)
    ... > I have a 120G HDD, in the BIOS is set as LBA. ... The controllers are able to map the "absolute" sector number to ... the correct place on the disk - which, bny the way, might even be ... > The data for partition 1 is: ...
    (freebsd-questions)

Loading