XT Builds determine number of floppy drives from equipment WORD stored in BIOS Data Area. HD controllers doesn't seem to update it. AT Builds determine number of floppy drives using BIOS function (INT 13h, AH=08h) that is unavailable on XT systems. Most likely HD floppy controllers do support it. Maybe I should try that on XT builds and then read from BDA if it won't succeed. I think I did that on XTIDE Universal BIOS v1.x.x but it was simplified to save ROM space.Hi Tomi, it is better with R547. When I set in boot settings number of drives to 3 it writes:
Booting D>>D (it is problematic with automatic settings, it does not boot from A: neither from IDE)
I found out what was wrong. It is not related to 3 floppy drives but to CHS translations.D: is first partition from slave HDD but not handled correctly I can only see boot directory not files and subdirs. Second partition on slave IDE is missing.
There is a bug on publicly released versions. If LARGE mode is selected for drives with 8193 or more cylinders and 16 heads, the drive geometry must be changed so cylinders = (cylinders * 16) / 15 and heads = 15. This prevents L-Heads to became 256 that is not supported by DOS. The drive must be told to use 15 heads instead of 16 but the buggy versions did not do that. Fortunately XTIDE Universal BIOS used LBA addressing mode for drives with 8193 or more cylinders so the bug appeared only when LARGE mode was manually set and CHS was manually specified to be 8193 or more cylinders and 16 heads.
I fixed the bug but introduced a new one. Instead of limiting heads to 15 for user defined LARGE mode drives with 8193 or more cylinders and 16 heads, it was also limited for drives with 8192 or less cylinders and 16 heads. So that explains why you lost a partition and such.
I'll send you a new version to test but there is another change you should know (and everyone else when upgrading to next publicly released version). Assisted LBA is now used for all drives with LBA support when EBIOS functions are included in the build (and they are included by default although I do not know why anyone would need them on XT systems).