ScanDrives: push ax ; at df3 in 1.4
push si
- mov dl, 80h ;Start at Drive 0x80
-NextDrv: mov ax,4B01h ;Get Bootable CD-ROM Status
- mov BYTE [SpecPkt],0 ;Clear 1st byte of SpecPkt
+ mov dl, 7fh ;Start at Drive 0x80
+NextDrv: inc dl
+ clc
+ mov ax,4B01h ;Get Bootable CD-ROM Status
+ mov BYTE [SpecPkt],0 ;Clear 1st byte of SpecPkt
call SpecGo
; Carry is not cleared in buggy Dell BIOSes,
; so I'm checking packet size byte
ja FindFail ; in 1.4 at e16
jmp short SendFound ; in 1.4 at e26
-FindFail: inc dl ;Next drive
- cmp dl, 0ffh
- jb SendFail ; Check from 80h..ffh
- jmp short NextDrv
+FindFail: cmp dl, 0ffh
+ je SendFail ; Check from 80h..ffh
+ jmp short NextDrv ;Next drive
SendFail: xor dl,dl
stc
jmp short ThingDone