[Freedos-devel] bug in freedos kernel int 21.1c invalid drive handling?

2009-01-23 Thread Eric Auer
Hi, I noticed that int 21 with ah=1c might return wrong values for invalid drive, can somebody check this? For example: Is this a bug? When did we introduce it? What do other DOSes do here...? For invalid drives, I get: ds:bx=0:0 al=0 cx=400 dx=unchanged I expect: al=ff, other values are not

Re: [Freedos-devel] bug in freedos kernel int 21.1c invalid drive handling?

2009-01-23 Thread Ladislav Lacina
Well, I did some testing in FreeDOS, MSDOS 7.1, Windows98 and WindowsXP This function works in all these environment different. F 1) For existing 3,5 floppy disks all give the same (correct) results only MSDOS gives wrong Total number of Sectors and Sectors per Cluster 2) For existing hard disks

Re: [Freedos-devel] bug in freedos kernel int 21.1c invalid drive handling?

2009-01-23 Thread Christian Masloch
1) For existing 3,5 floppy disks all give the same (correct) results only MSDOS gives wrong Total number of Sectors and Sectors per Cluster This bug of MS-DOS 7.10 is also documented in RBIL 61. BTW, I think the other registers should not be changed when al is set to FFh regardless of what

Re: [Freedos-devel] bug in freedos kernel int 21.1c invalid drive handling?

2009-01-23 Thread Eric Auer
Hi Laaca, thanks for checking! ... FreeDOS, MSDOS 7.1, Windows98 and WindowsXP ... existing 3,5 floppy disks all give the same (correct) results only MSDOS gives wrong Total number of Sectors and Sectors per Cluster As this is MS Win9x DOS 7, the wrong number is expected... 2) For existing