don't try to detect CD if controller doesn't respond to device select

git-svn-id: svn://kolibrios.org@5030 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
CleverMouse 2014-08-12 11:11:45 +00:00
parent afa9806e47
commit 2ecf899269

View File

@ -68,6 +68,8 @@ FindHDD_1:
push ebx ecx push ebx ecx
call ReadHDD_ID call ReadHDD_ID
pop ecx ebx pop ecx ebx
cmp [DevErrorCode], 7
je .end
cmp [DevErrorCode], 0 cmp [DevErrorCode], 0
jne .FindCD jne .FindCD
@ -274,7 +276,7 @@ ATACommand db ? ;код команды, подлежащей выполне
; интервал ожидания, 2 - неверный код режима адресации, ; интервал ожидания, 2 - неверный код режима адресации,
; 3 - неверный номер канала, 4 - неверный номер диска, ; 3 - неверный номер канала, 4 - неверный номер диска,
; 5 - неверный номер головки, 6 - ошибка при выполнении ; 5 - неверный номер головки, 6 - ошибка при выполнении
; команды) ; команды, 7 - таймаут при выборе канала)
DevErrorCode dd ? DevErrorCode dd ?
endg endg
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
@ -380,7 +382,7 @@ SendCommandToHDD:
ret ret
; Записать код ошибки ; Записать код ошибки
@@Err1: @@Err1:
mov [DevErrorCode], 1 mov [DevErrorCode], 7
ret ret
@@Err2: @@Err2:
mov [DevErrorCode], 2 mov [DevErrorCode], 2