Translate russian comments to english #2 , no code changes

git-svn-id: svn://kolibrios.org@8051 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Rustem Gimadutdinov (rgimad) 2020-07-14 22:30:33 +00:00
parent 4689014eb5
commit 5b284466d4
3 changed files with 130 additions and 130 deletions

View File

@ -129,7 +129,7 @@ exc_c: ; exceptions (all but 7th - #NM)
mov ax, app_data ; exception mov ax, app_data ; exception
mov ds, ax ; load proper values mov ds, ax ; load proper values
mov es, ax ; to registers mov es, ax ; to registers
cld ; clear the destination flag cld ; clear the direction flag
movzx ebx, bl movzx ebx, bl
; redirect to V86 manager? (EFLAGS & 0x20000) != 0? ; redirect to V86 manager? (EFLAGS & 0x20000) != 0?
test byte[reg_eflags+2], 2 test byte[reg_eflags+2], 2

View File

@ -9,9 +9,9 @@ $Revision$
;*************************************************** ;***************************************************
; предварительная очистка области таблицы ; clear the DRIVE_DATA table,
; поиск и занесение в таблицу приводов FDD ; search for FDDs and add them into the table
; автор Mario79 ; author - Mario79
;*************************************************** ;***************************************************
xor eax, eax xor eax, eax
mov edi, DRIVE_DATA mov edi, DRIVE_DATA

View File

@ -163,7 +163,7 @@ convert_Sector512_value:
.end: .end:
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
; Адрес считываемого сектора в режиме LBA ; Address of reading sector in LBA mode
uglobal uglobal
SectorAddress dd ? SectorAddress dd ?
dev_name: dev_name:
@ -171,49 +171,49 @@ dev_name:
endg endg
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
;************************************************* ;*************************************************
;* ЧТЕНИЕ ИДЕНТИФИКАТОРА ЖЕСТКОГО ДИСКА * ;* READING THE HARD DISK IDENTIFIER *
;* Входные параметры передаются через глобальные * ;* Input parameters are passed through the global*
;* переменные: * ;* variables: *
;* ChannelNumber - номер канала (1 или 2); * ;* ChannelNumber - channel number (1 or 2); *
;* DiskNumber - номер диска на канале (0 или 1). * ;* DiskNumber - disk number on channel (0 or 1) *
;* Идентификационный блок данных считывается * ;* Block of identificational data is reading *
;* в массив Sector512. * ;* to Sector512 array. *
;************************************************* ;*************************************************
ReadHDD_ID: ReadHDD_ID:
; Задать режим CHS ; set up CHS mode
mov [ATAAddressMode], 0 mov [ATAAddressMode], 0
; Послать команду идентификации устройства ; send device identification command
mov [ATAFeatures], 0 mov [ATAFeatures], 0
mov [ATAHead], 0 mov [ATAHead], 0
mov [ATACommand], 0xEC mov [ATACommand], 0xEC
call SendCommandToHDD call SendCommandToHDD
cmp [DevErrorCode], 0 ;проверить код ошибки cmp [DevErrorCode], 0 ; check the error code
jne @@End ;закончить, сохранив код ошибки jne @@End ; finish, saving the error code
mov dx, [ATABasePortAddr] mov dx, [ATABasePortAddr]
add dx, 7 ;адрес регистра состояни add dx, 7 ; address of state register
mov ecx, 0xffff mov ecx, 0xffff
@@WaitCompleet: @@WaitCompleet:
; Проверить время выполнения команды ; Check command execution time
dec ecx dec ecx
jz @@Error1 ;ошибка тайм-аута jz @@Error1 ; timeout error
; Проверить готовность ; Check if ready or not
in al, dx in al, dx
test al, 80h ;состояние сигнала BSY test al, 80h ; BSY signal state
jnz @@WaitCompleet jnz @@WaitCompleet
test al, 1 ;состояние сигнала ERR test al, 1 ; ERR signal state
jnz @@Error6 jnz @@Error6
test al, 08h ;состояние сигнала DRQ test al, 08h ; DRQ signal state
jz @@WaitCompleet jz @@WaitCompleet
; Принять блок данных от контроллера ; Receive data block from controller
mov edi, Sector512 mov edi, Sector512
mov dx, [ATABasePortAddr];регистр данных mov dx, [ATABasePortAddr]; data register
mov cx, 256 ;число считываемых слов mov cx, 256 ; number of word to receive
rep insw ;принять блок данных rep insw ; receive data block
ret ret
; Записать код ошибки ; write the error code
@@Error1: @@Error1:
mov [DevErrorCode], 1 mov [DevErrorCode], 1
ret ret
@ -223,111 +223,111 @@ ReadHDD_ID:
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
uglobal uglobal
; Стандартные базовые адреса каналов 1 и 2 ; Standart base addresses of channels 1 or 2
StandardATABases dw ?, ? ; 1F0h, 170h StandardATABases dw ?, ? ; 1F0h, 170h
; Номер канала ; Channel number
ChannelNumber db ? ChannelNumber db ?
; Номер диска ; Disk number
DiskNumber db ? DiskNumber db ?
DeviceNumber db ? DeviceNumber db ?
; Базовый адрес группы портов контроллера ATA ; Base address of ATA controller's port group
ATABasePortAddr dw ? ATABasePortAddr dw ?
; Параметры ATA-команды ; ATA-command parameters
ATAFeatures db ? ;особенности ATAFeatures db ? ; features
ATASectorCount db ? ;количество обрабатываемых секторов ATASectorCount db ? ; count of processing sectors
ATASectorNumber db ? ;номер начального сектора ATASectorNumber db ? ; initial sector number
ATACylinder dw ? ;номер начального цилиндра ATACylinder dw ? ; initial cylinder number
ATAHead db ? ;номер начальной головки ATAHead db ? ; initial head number
ATAAddressMode db ? ;режим адресации (0 - CHS, 1 - LBA) ATAAddressMode db ? ; addressing mode (0 - CHS, 1 - LBA)
ATACommand db ? ;код команды, подлежащей выполнению ATACommand db ? ; executing command number
; Код ошибки (0 - нет ошибок, 1 - превышен допустимый ; Error code (0 - no errors, 1 - waiting time limit exceed
; интервал ожидания, 2 - неверный код режима адресации, ; 2 - incorrect code of addressing mode,
; 3 - неверный номер канала, 4 - неверный номер диска, ; 3 - incorrect channel number, 4 - incorrect disk number,
; 5 - неверный номер головки, 6 - ошибка при выполнении ; 5 - incorrect head number, 6 - command execution error,
; команды, 7 - таймаут при выборе канала) ; 7 - time out when choosing channel)
DevErrorCode dd ? DevErrorCode dd ?
endg endg
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
;**************************************************** ;****************************************************
;* ПОСЛАТЬ КОМАНДУ ЗАДАННОМУ ДИСКУ * ;* SEND COMMAND TO GIVEN DISK *
;* Входные параметры передаются через глобальные * ;* Input parameters are passed through the global *
;* переменные: * ;* variables: *
;* ChannelNumber - номер канала (1 или 2); * ;* ChannelNumber - channel number (1 or 2); *
;* DiskNumber - номер диска (0 или 1); * ;* DiskNumber - disk number (0 or 1); *
;* ATAFeatures - "особенности"; * ;* ATAFeatures - "features"; *
;* ATASectorCount - количество секторов; * ;* ATASectorCount - sector count; *
;* ATASectorNumber - номер начального сектора; * ;* ATASectorNumber - initial sector number; *
;* ATACylinder - номер начального цилиндра; * ;* ATACylinder - initial cylinder number; *
;* ATAHead - номер начальной головки; * ;* ATAHead - initial head number; *
;* ATAAddressMode - режим адресации (0-CHS, 1-LBA); * ;* ATAAddressMode - addressing mode (0-CHS, 1-LBA); *
;* ATACommand - код команды. * ;* ATACommand - command code. *
;* После успешного выполнения функции: * ;* If the function finished successfully: *
;* в ATABasePortAddr - базовый адрес HDD; * ;* in ATABasePortAddr - base address of HDD; *
;* в DevErrorCode - ноль. * ;* in DevErrorCode - zero. *
;* При возникновении ошибки в DevErrorCode будет * ;* If error has occured then in DevErrorCode will *
;* возвращен код ошибки. * ;* be the error code. *
;**************************************************** ;****************************************************
SendCommandToHDD: SendCommandToHDD:
; Проверить значение кода режима ; Check the addressing mode code
cmp [ATAAddressMode], 1 cmp [ATAAddressMode], 1
ja @@Err2 ja @@Err2
; Проверить корректность номера канала ; Check the channel number correctness
movzx ebx, [ChannelNumber] movzx ebx, [ChannelNumber]
dec ebx dec ebx
cmp ebx, 1 cmp ebx, 1
ja @@Err3 ja @@Err3
; Установить базовый адрес ; Set the base address
shl ebx, 1 shl ebx, 1
mov ax, [ebx+StandardATABases] mov ax, [ebx+StandardATABases]
mov [ATABasePortAddr], ax mov [ATABasePortAddr], ax
; Ожидание готовности HDD к приему команды ; Waiting for HDD ready to receive a command
; Выбрать нужный диск ; Choose desired disk
mov dx, [ATABasePortAddr] mov dx, [ATABasePortAddr]
add dx, 6 ;адрес регистра головок add dx, 6 ; address of the heads register
mov al, [DiskNumber] mov al, [DiskNumber]
cmp al, 1 ;проверить номера диска cmp al, 1 ; check the disk number
ja @@Err4 ja @@Err4
shl al, 4 shl al, 4
or al, 10100000b or al, 10100000b
out dx, al out dx, al
; Ожидать, пока диск не будет готов ; Waiting for disk ready
inc dx inc dx
mov ecx, 0xfff mov ecx, 0xfff
@@WaitHDReady: @@WaitHDReady:
; Проверить время ожидани ; Check waiting time
dec ecx dec ecx
jz @@Err1 jz @@Err1
; Прочитать регистр состояни ; Read the state register
in al, dx in al, dx
; Проверить состояние сигнала BSY ; Check the state of BSY signal
test al, 80h test al, 80h
jnz @@WaitHDReady jnz @@WaitHDReady
; Проверить состояние сигнала DRQ ; Check the state of DRQ signal
test al, 08h test al, 08h
jnz @@WaitHDReady jnz @@WaitHDReady
; Загрузить команду в регистры контроллера ; load command to controller's registers
cli cli
mov dx, [ATABasePortAddr] mov dx, [ATABasePortAddr]
inc dx ;регистр "особенностей" inc dx ; "features" register
mov al, [ATAFeatures] mov al, [ATAFeatures]
out dx, AL out dx, AL
inc dx ;счетчик секторов inc dx ; sector counter
mov al, [ATASectorCount] mov al, [ATASectorCount]
out dx, AL out dx, AL
inc dx ;регистр номера сектора inc dx ; sector number register
mov al, [ATASectorNumber] mov al, [ATASectorNumber]
out dx, AL out dx, AL
inc dx ;номер цилиндра (младший байт) inc dx ; cylinder number (low byte)
mov ax, [ATACylinder] mov ax, [ATACylinder]
out dx, AL out dx, AL
inc dx ;номер цилиндра (старший байт) inc dx ; cylinder number (high byte)
mov al, AH mov al, AH
out dx, AL out dx, AL
inc dx ;номер головки/номер диска inc dx ; head number / disk number
mov al, [DiskNumber] mov al, [DiskNumber]
shl al, 4 shl al, 4
cmp [ATAHead], 0xF ;проверить номер головки cmp [ATAHead], 0xF ; check head number
ja @@Err5 ja @@Err5
or al, [ATAHead] or al, [ATAHead]
@ -336,15 +336,15 @@ SendCommandToHDD:
shl ah, 6 shl ah, 6
or al, ah or al, ah
out dx, al out dx, al
; Послать команду ; Send command
mov al, [ATACommand] mov al, [ATACommand]
inc dx ;регистр команд inc dx ; command register
out dx, al out dx, al
sti sti
; Сбросить признак ошибки ; reset the error sign
mov [DevErrorCode], 0 mov [DevErrorCode], 0
ret ret
; Записать код ошибки ; write error code
@@Err1: @@Err1:
mov [DevErrorCode], 7 mov [DevErrorCode], 7
ret ret
@ -359,22 +359,22 @@ SendCommandToHDD:
ret ret
@@Err5: @@Err5:
mov [DevErrorCode], 5 mov [DevErrorCode], 5
; Завершение работы программы ; finish work
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
;************************************************* ;*************************************************
;* ЧТЕНИЕ ИДЕНТИФИКАТОРА УСТРОЙСТВА ATAPI * ;* READ ATAPI DEVICE IDENTIFIER *
;* Входные параметры передаются через глобальные * ;* Input parameters are passed through the global*
;* перменные: * ;* variables: *
;* ChannelNumber - номер канала; * ;* ChannelNumber - channel number; *
;* DiskNumber - номер диска на канале. * ;* DiskNumber - disk number on channel. *
;* Идентификационный блок данных считывается * ;* Block of identificational data is reading *
;* в массив Sector512. * ;* to Sector512 array. * *
;************************************************* ;*************************************************
ReadCD_ID: ReadCD_ID:
; Задать режим CHS ; Set CHS mode
mov [ATAAddressMode], 0 mov [ATAAddressMode], 0
; Послать команду идентификации устройства ; Send command for device identification
mov [ATAFeatures], 0 mov [ATAFeatures], 0
mov [ATASectorCount], 0 mov [ATASectorCount], 0
mov [ATASectorNumber], 0 mov [ATASectorNumber], 0
@ -382,33 +382,33 @@ ReadCD_ID:
mov [ATAHead], 0 mov [ATAHead], 0
mov [ATACommand], 0xA1 mov [ATACommand], 0xA1
call SendCommandToHDD call SendCommandToHDD
cmp [DevErrorCode], 0;проверить код ошибки cmp [DevErrorCode], 0 ; check the error code
jne @@End_1 ;закончить, сохранив код ошибки jne @@End_1 ; finish, saving the error code
; Ожидать готовность данных HDD ; Wait for HDD data ready
mov dx, [ATABasePortAddr] mov dx, [ATABasePortAddr]
add dx, 7 ;порт 1х7h add dx, 7 ; port 1х7h
mov ecx, 0xffff mov ecx, 0xffff
@@WaitCompleet_1: @@WaitCompleet_1:
; Проверить врем ; Check time
dec ecx dec ecx
jz @@Error1_1 ;ошибка тайм-аута jz @@Error1_1 ; time out error
; Проверить готовность ; Check readyness
in al, dx in al, dx
test al, 80h ;состояние сигнала BSY test al, 80h ; BSY signal state
jnz @@WaitCompleet_1 jnz @@WaitCompleet_1
test al, 1 ;состояние сигнала ERR test al, 1 ; ERR signal state
jnz @@Error6_1 jnz @@Error6_1
test al, 08h ;состояние сигнала DRQ test al, 08h ; DRQ signal state
jz @@WaitCompleet_1 jz @@WaitCompleet_1
; Принять блок данных от контроллера ; Receive data block from controller
mov edi, Sector512 ;offset Sector512 mov edi, Sector512 ; offset Sector512
mov dx, [ATABasePortAddr];порт 1x0h mov dx, [ATABasePortAddr] ; port 1x0h
mov cx, 256;число считываемых слов mov cx, 256 ; words read count
rep insw rep insw
ret ret
; Записать код ошибки ; write the error code
@@Error1_1: @@Error1_1:
mov [DevErrorCode], 1 mov [DevErrorCode], 1
ret ret
@ -418,49 +418,49 @@ ReadCD_ID:
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
;************************************************* ;*************************************************
;* СБРОС УСТРОЙСТВА * ;* DEVICE RESET *
;* Входные параметры передаются через глобальные * ;* Input parameters are passed through the global*
;* переменные: * ;* variables: *
;* ChannelNumber - номер канала (1 или 2); * ;* ChannelNumber - channel number (1 or 2); *
;* DiskNumber - номер диска (0 или 1). * ;* DiskNumber - disk number (0 or 1). *
;************************************************* ;*************************************************
DeviceReset: DeviceReset:
; Проверить корректность номера канала ; Check the channel number correctness
movzx ebx, [ChannelNumber] movzx ebx, [ChannelNumber]
dec ebx dec ebx
cmp ebx, 1 cmp ebx, 1
ja @@Err3_2 ja @@Err3_2
; Установить базовый адрес ; Set base address
shl ebx, 1 shl ebx, 1
mov dx, [ebx+StandardATABases] mov dx, [ebx+StandardATABases]
mov [ATABasePortAddr], dx mov [ATABasePortAddr], dx
; Выбрать нужный диск ; Choose desired disk
add dx, 6 ;адрес регистра головок add dx, 6 ; address of heads register
mov al, [DiskNumber] mov al, [DiskNumber]
cmp al, 1 ;проверить номера диска cmp al, 1 ; check disk number
ja @@Err4_2 ja @@Err4_2
shl al, 4 shl al, 4
or al, 10100000b or al, 10100000b
out dx, al out dx, al
; Послать команду "Сброс" ; Send the "Reset" command
mov al, 0x8 mov al, 0x8
inc dx ;регистр команд inc dx ; command register
out dx, al out dx, al
mov ecx, 0x80000 mov ecx, 0x80000
@@WaitHDReady_1: @@WaitHDReady_1:
; Проверить время ожидани ; Check waiting time
dec ecx dec ecx
je @@Err1_2 ;ошибка тайм-аута je @@Err1_2 ; time out error
; Прочитать регистр состояни ; read the state register
in al, dx in al, dx
; Проверить состояние сигнала BSY ; Check the state of BSY signal
test al, 80h test al, 80h
jnz @@WaitHDReady_1 jnz @@WaitHDReady_1
; Сбросить признак ошибки ; reset the error sign
mov [DevErrorCode], 0 mov [DevErrorCode], 0
ret ret
; Обработка ошибок ; error processing
@@Err1_2: @@Err1_2:
mov [DevErrorCode], 1 mov [DevErrorCode], 1
ret ret
@ -469,7 +469,7 @@ DeviceReset:
ret ret
@@Err4_2: @@Err4_2:
mov [DevErrorCode], 4 mov [DevErrorCode], 4
; Записать код ошибки ; write error code
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
EndFindHDD: EndFindHDD: