diff --git a/Source/HBIOS/fd.asm b/Source/HBIOS/fd.asm index 45ed35a9..f4680b98 100644 --- a/Source/HBIOS/fd.asm +++ b/Source/HBIOS/fd.asm @@ -743,6 +743,8 @@ FD_INIT0: ; DOES NOT ATTEMPT TO DETERMINE THE ACTUAL VARIANT. ; FD_DETECT: + IN A,(FDC_MSR) ; IGNORE FIRST READ + CALL DLY32 ; WAIT A BIT FOR FDC IN A,(FDC_MSR) ; READ MSR CP $80 JR Z,FD_DETECT1 ; $80 IS OK @@ -751,6 +753,7 @@ FD_DETECT: RET ; NOPE, ABORT WITH ZF=NZ ; FD_DETECT1: + CALL DLY32 ; WAIT A BIT FOR FDC IN A,(FDC_MSR) ; READ MSR AGAIN CP $80 RET ; $80 OK, ELSE NOT PRESENT