Qbix wrote:try something like int 0x21 ah=0x36
for various drives. be wary of floppies though. Those are always special.
This works for the ready disk, but for the case of the non-ready disk it triggers Int 24h which I would like to avoid.
After some further digging, here is what I see regarding DOSBox mounts.
For the cases of "imgmount"ed floppy or disk images ...
imgmount a C:\DOSBOX\imgmount\blank144.img -t floppy
Drive 0x0 (AH) Status = 0x0
imgmount c C:\DOSBOX\imgmount\doswin512.img -size 512,63,16,1021 -fs fat
Drive 0x80 (AH) Status = 0x0
For the cases of "mount"ed disk images ...
mount d C:\DOSBOX\mount1
Drive 0x81 (AH) Status = 0xFF
mount e C:\DOSBOX\mount2
Drive 0x82 (AH) Status = 0xFF
and the default Z drive mount ...
Drive 0x97 (AH) Status = 0xFF
For the case of a partition without a file system ... (tested on hardware)
Drive 0x81 (AH) Status = 0x1
01h invalid function in AH or invalid parameter
FFh sense operation failed (hard disk)
FFh seems to be the correct and expected value given that the disk is emulated.
What I would like to do is handle the case for FFh in some way that does not trigger Int 24h but verifies that data is ready on the drive.
I am open to suggestions.