forked from KolibriOS/kolibrios
Fix Floppy driver for VirtualBox.
git-svn-id: svn://kolibrios.org@4115 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
352f79b991
commit
44d21dbf19
@ -162,7 +162,7 @@ FDCDataInput:
|
|||||||
mov [FDC_Status], FDC_Normal
|
mov [FDC_Status], FDC_Normal
|
||||||
; Проверить готовность контроллера к передаче данных
|
; Проверить готовность контроллера к передаче данных
|
||||||
mov DX, 3F4h ;(порт состояния FDC)
|
mov DX, 3F4h ;(порт состояния FDC)
|
||||||
xor CX, CX ;установить счетчик тайм-аута
|
mov ecx, 0x10000 ;установить счетчик тайм-аута
|
||||||
@@TestRS_1:
|
@@TestRS_1:
|
||||||
in AL, DX ;прочитать регистр RS
|
in AL, DX ;прочитать регистр RS
|
||||||
and AL, 0C0h ;выдлить разряды 6 и 7
|
and AL, 0C0h ;выдлить разряды 6 и 7
|
||||||
@ -197,8 +197,6 @@ WaitFDCInterrupt:
|
|||||||
pusha
|
pusha
|
||||||
; Сбросить байт состояния операции
|
; Сбросить байт состояния операции
|
||||||
mov [FDC_Status], FDC_Normal
|
mov [FDC_Status], FDC_Normal
|
||||||
; Сбросить флаг прерывани
|
|
||||||
mov [FDD_IntFlag], 0
|
|
||||||
; Обнулить счетчик тиков
|
; Обнулить счетчик тиков
|
||||||
mov eax, [timer_ticks]
|
mov eax, [timer_ticks]
|
||||||
mov [TickCounter], eax
|
mov [TickCounter], eax
|
||||||
@ -372,6 +370,8 @@ RecalibrateFDD:
|
|||||||
SeekTrack:
|
SeekTrack:
|
||||||
pusha
|
pusha
|
||||||
call save_timer_fdd_motor
|
call save_timer_fdd_motor
|
||||||
|
; Сбросить флаг прерывания
|
||||||
|
mov [FDD_IntFlag], 0
|
||||||
; Подать команду "Поиск"
|
; Подать команду "Поиск"
|
||||||
mov AL, 0Fh
|
mov AL, 0Fh
|
||||||
call FDCDataOutput
|
call FDCDataOutput
|
||||||
@ -431,6 +431,8 @@ SeekTrack:
|
|||||||
ReadSector:
|
ReadSector:
|
||||||
pushad
|
pushad
|
||||||
call save_timer_fdd_motor
|
call save_timer_fdd_motor
|
||||||
|
; Сбросить флаг прерывания
|
||||||
|
mov [FDD_IntFlag], 0
|
||||||
; Установить скорость передачи 500 Кбайт/с
|
; Установить скорость передачи 500 Кбайт/с
|
||||||
mov AX, 0
|
mov AX, 0
|
||||||
mov DX, 03F7h
|
mov DX, 03F7h
|
||||||
@ -531,6 +533,8 @@ ReadSectWithRetr:
|
|||||||
WriteSector:
|
WriteSector:
|
||||||
pushad
|
pushad
|
||||||
call save_timer_fdd_motor
|
call save_timer_fdd_motor
|
||||||
|
; Сбросить флаг прерывания
|
||||||
|
mov [FDD_IntFlag], 0
|
||||||
; Установить скорость передачи 500 Кбайт/с
|
; Установить скорость передачи 500 Кбайт/с
|
||||||
mov AX, 0
|
mov AX, 0
|
||||||
mov DX, 03F7h
|
mov DX, 03F7h
|
||||||
|
Loading…
Reference in New Issue
Block a user