I have just tried my setup of the hardware. All worked as expected.
Scenario 1 - No Hard Drive Controller
First, I fitted my 5150 with the FDC-344 floppy controller (UNIQUE) and three floppy drives:
On first connector: 360K + 1.2M
On second connector: 1.44M
Put a DOS 6.22 boot disk into the 360K drive, and then booted.
Appeared was:
Above, even though it is DOS that assigns drive letters, the FDC-344 BIOS displayed what I guess was its predictions about the future drive assignments.
All three floppy drives worked (as A: / B: / C: ).
Ran DEBUG and determined that the FDC-344 controller BIOS sits at CA000. No jumpers to change that. So, no possible BIOS ROM address conflict with the IBM/Xebec hard drive controller that I was about to insert (it sits at C8000).
Scenario 2 - Added Hard Drive Controller, With IBM DOS 3.3 on Hard Drive
Removed boot floppy.
Fitted 200W clone power supply into 5150 (to cater for hard drive power consumption).
Added an IBM/Xebec hard drive controller (Variation #2 shown [
here]).
Added a Seagate ST-412 preloaded with IBM DOS 3.3
Booted.
The FDC-344 controller displayed exactly the same text as it did before on the previous boot, and during that time I saw all three floppy drives being searched.
The 5150 booted from the hard drive.
DOS assigned drive letters as follows: A=360K, B=1.2M, C=1.44M, D=hard_drive
That was as expected (pre DOS 5).
At the D:> prompt (hard drive), trying to run programs resulted in the 1.44M drive being searched. That turned out to be because the hard drive's AUTOEXEC.BAT contained PATH=C:\DOS
All floppy drives behaved as expected. I could read data on all of them.
Scenario 3 - MS-DOS 6.22 on Hard Drive
Reformatted the hard drive with MS-DOS 6.22
Booted.
The FDC-344 controller displayed exactly the same text as it did before on the previous boot, and during that time I saw all three floppy drives being searched.
The 5150 booted from the hard drive.
DOS assigned drive letters as follows: A=360K, B=1.2M, D=1.44M, C=hard_drive
As expected (DOS 5 or later), the hard drive now had the C: assignment.
The drive letter assignment was different to what the FDC-344 put on screen, proving that the FDC-344 BIOS (running early) is not well positioned to predict how DOS will assign drive letters.
All floppy drives behaved as expected. I could read data on all of them.