Sonny said:
Ayon kay Folkert Rienstra:
not exactly PUT DRIVE PARAMETERS but
change the transfer mode from PIO to DMA
Tnx for the info. I tried it with my drives but it failed.
Failed how?
I checked the Extended INT 13 version number and it was 2.1, but the site says
IBM/MS INT 13 Extensions v2.1+ - SET HARDWARE CONFIGURATION,
so it should be v2.1+ to be able to work, i guess..
the BIOS was setup with DMA enabled (AUTO) but when
I'm running the BIOS calls, it was still running in PIO.
Suggesting a bios problem if this happens with several drives.
As I said before, the bios setup/POST probably uses the same call already.
If bios setup ****s up then it's likely the call ****ing up, so running the same
call won't help any unless the problem was in setting up the call incorrectly.
You sure you setup the call correctly, as explained in d1226r7-Enhanced-BIOS
or d1572r3-EDD3?
Again, we have a program that changes/sets mode to the fastest transfer
mode supported.
If your bios ****s up you may have to write your own version of Int 13/
AH=4Eh that does that too and execute it as part of the startup procedure.
(Of course if you are writing a test program you would use this to report
a failure mode in your bios because if you don't and the drive tests out to
be OK you will be reporting a false positive as the drive will still perform
slow without the test being run).
Or find out if the the Int 13/AH=4Eh call is calling a more obscure call
that does the actual settings on the drive and use/rewrite that.
The drives I tested support DMA,
Heh, try and find one that doesn't and isn't more than 10-15 years old.
and was able to run in DMA mode with our current program
(one that bypasses BIOS calls).
And presumably is giving you a false positive on the overall result.
It shouldn't mess with the modes unless it is checking all the available
speeds as part of the test run.
Anyway, thanks for the great help.
If there are still additional info you want to share, please do so.
I had the same problem with CDroms and fixed that by using a CDrom driver.
I don't use IDE diskdrives so I never had to look for an other option.
Maybe an Int13 extensions drive overlay may fix the (BIOS) problem?
I'm suspecting though that these only replace the higher level calls and
not the hardware specific ones.
So depending on what level the problem is in, that may still fail.