Removal of obsolete functions 18.11.2. Reduce the DRIVE_DATA area, because the data above 10 bytes is not used.
git-svn-id: svn://kolibrios.org@4641 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
bf7ba9066e
commit
507451f315
@ -179,8 +179,7 @@ struct TSS
|
||||
_io_map_1 rb 4096
|
||||
ends
|
||||
|
||||
PARTITION_COUNT equ 64
|
||||
DRIVE_DATA_SIZE equ (16+PARTITION_COUNT*100)
|
||||
DRIVE_DATA_SIZE equ 10
|
||||
|
||||
OS_BASE equ 0x80000000
|
||||
|
||||
|
@ -24,26 +24,13 @@ FindHDD:
|
||||
mov [ChannelNumber], 1
|
||||
mov [DiskNumber], 0
|
||||
call FindHDD_3
|
||||
; mov ax,[Sector512+176]
|
||||
; mov [DRIVE_DATA+6],ax
|
||||
; mov ax,[Sector512+126]
|
||||
; mov [DRIVE_DATA+8],ax
|
||||
; mov ax,[Sector512+128]
|
||||
; mov [DRIVE_DATA+8],ax
|
||||
mov [DiskNumber], 1
|
||||
call FindHDD_3
|
||||
; mov al,[Sector512+176]
|
||||
; mov [DRIVE_DATA+7],al
|
||||
inc [ChannelNumber]
|
||||
mov [DiskNumber], 0
|
||||
call FindHDD_3
|
||||
; mov al,[Sector512+176]
|
||||
; mov [DRIVE_DATA+8],al
|
||||
mov [DiskNumber], 1
|
||||
call FindHDD_1
|
||||
; mov al,[Sector512+176]
|
||||
; mov [DRIVE_DATA+9],al
|
||||
|
||||
jmp EndFindHDD
|
||||
|
||||
FindHDD_1:
|
||||
|
@ -846,7 +846,6 @@
|
||||
* ebx = 11 - номер подфункции
|
||||
* ecx = тип таблицы:
|
||||
* 1 = короткая версия, 10 байт
|
||||
* 2 = полная версия, 65536 байт
|
||||
* edx = указатель на буфер (в приложении) для таблицы
|
||||
Возвращаемое значение:
|
||||
* функция не возвращает значения
|
||||
@ -877,23 +876,7 @@
|
||||
если файловая система не поддерживается). В текущей версии ядра
|
||||
для жёстких дисков поддерживаются только FAT16, FAT32 и NTFS.
|
||||
* +6: 4 db: зарезервировано
|
||||
Формат таблицы: полная версия:
|
||||
* +0: 10 db: такие же, как и в короткой версии
|
||||
* +10: 100 db: данные для первого раздела
|
||||
* +110: 100 db: данные для второго раздела
|
||||
* ...
|
||||
* +10+100*(n-1): 100 db: данные для последнего раздела
|
||||
Разделы расположены в следующем порядке: сначала последовательно все
|
||||
распознанные разделы на HD на IDE0 (если есть),
|
||||
затем на HD на IDE1 (если есть) и т.д. до IDE3.
|
||||
Формат информации о разделе:
|
||||
* +0: dword: начальный физический сектор раздела
|
||||
* +4: dword: последний физический сектор раздела
|
||||
(принадлежит разделу)
|
||||
* +8: byte: тип файловой системы:
|
||||
16=FAT16, 32=FAT32, 1=NTFS
|
||||
* формат дальнейших данных зависит от файловой системы,
|
||||
может меняться с изменениями в ядре и поэтому не описывается
|
||||
|
||||
Замечания:
|
||||
* Короткая таблица может быть использована для получения информации
|
||||
об имеющихся устройствах.
|
||||
|
@ -846,7 +846,6 @@ Parameters:
|
||||
* ebx = 11 - subfunction number
|
||||
* ecx = type of the table:
|
||||
* 1 = short version, 10 bytes
|
||||
* 2 = full version, 65536 bytes
|
||||
* edx = pointer to the buffer (in the application) for the table
|
||||
Returned value:
|
||||
* function does not return value
|
||||
@ -878,24 +877,7 @@ Format of the table: short version:
|
||||
the file system is not supported). Current version of the kernel
|
||||
supports only FAT16, FAT32 and NTFS for hard disks.
|
||||
* +6: 4 db: reserved
|
||||
Format of the table: full version:
|
||||
* +0: 10 db: same as for the short version
|
||||
* +10: 100 db: data for the first partition
|
||||
* +110: 100 db: data for the second partition
|
||||
* ...
|
||||
* +10+100*(n-1): 100 db: data for the last partition
|
||||
The partitions are located as follows: at first sequentially all
|
||||
recoginzed partitions on HD on IDE0 (if present),
|
||||
then on HD on IDE1 (if present) and so on up to IDE3.
|
||||
Format of the information about partition
|
||||
(at moment only FAT is supported):
|
||||
* +0: dword: first physical sector of the partition
|
||||
* +4: dword: last physical sector of the partition
|
||||
(belongs to the partition)
|
||||
* +8: byte: file system type:
|
||||
16=FAT16, 32=FAT32, 1=NTFS
|
||||
* other data are dependent on file system, are modified with
|
||||
kernel modifications and therefore are not described
|
||||
|
||||
Remarks:
|
||||
* The short table can be used for obtaining the information about
|
||||
available devices.
|
||||
|
@ -2248,27 +2248,15 @@ sysfn_minimize: ; 18.10 = minimize window
|
||||
;------------------------------------------------------------------------------
|
||||
align 4
|
||||
sysfn_getdiskinfo: ; 18.11 = get disk info table
|
||||
; cmp ecx,1
|
||||
dec ecx
|
||||
jnz full_table
|
||||
small_table:
|
||||
call for_all_tables
|
||||
mov ecx, 10
|
||||
cld
|
||||
rep movsb
|
||||
ret
|
||||
for_all_tables:
|
||||
jnz .exit
|
||||
.small_table:
|
||||
mov edi, edx
|
||||
mov esi, DRIVE_DATA
|
||||
ret
|
||||
full_table:
|
||||
; cmp ecx,2
|
||||
dec ecx
|
||||
jnz exit_for_anyone
|
||||
call for_all_tables
|
||||
mov ecx, DRIVE_DATA_SIZE/4
|
||||
mov ecx, DRIVE_DATA_SIZE ;10
|
||||
cld
|
||||
rep movsd
|
||||
rep movsb
|
||||
.exit:
|
||||
ret
|
||||
;------------------------------------------------------------------------------
|
||||
sysfn_lastkey: ; 18.12 = return 0 (backward compatibility)
|
||||
|
Loading…
Reference in New Issue
Block a user