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:
Marat Zakiyanov (Mario79) 2014-03-13 07:21:24 +00:00
parent bf7ba9066e
commit 507451f315
5 changed files with 8 additions and 69 deletions

View File

@ -179,8 +179,7 @@ struct TSS
_io_map_1 rb 4096 _io_map_1 rb 4096
ends ends
PARTITION_COUNT equ 64 DRIVE_DATA_SIZE equ 10
DRIVE_DATA_SIZE equ (16+PARTITION_COUNT*100)
OS_BASE equ 0x80000000 OS_BASE equ 0x80000000

View File

@ -24,26 +24,13 @@ FindHDD:
mov [ChannelNumber], 1 mov [ChannelNumber], 1
mov [DiskNumber], 0 mov [DiskNumber], 0
call FindHDD_3 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 mov [DiskNumber], 1
call FindHDD_3 call FindHDD_3
; mov al,[Sector512+176]
; mov [DRIVE_DATA+7],al
inc [ChannelNumber] inc [ChannelNumber]
mov [DiskNumber], 0 mov [DiskNumber], 0
call FindHDD_3 call FindHDD_3
; mov al,[Sector512+176]
; mov [DRIVE_DATA+8],al
mov [DiskNumber], 1 mov [DiskNumber], 1
call FindHDD_1 call FindHDD_1
; mov al,[Sector512+176]
; mov [DRIVE_DATA+9],al
jmp EndFindHDD jmp EndFindHDD
FindHDD_1: FindHDD_1:

View File

@ -846,7 +846,6 @@
* ebx = 11 - номер подфункции * ebx = 11 - номер подфункции
* ecx = тип таблицы: * ecx = тип таблицы:
* 1 = короткая версия, 10 байт * 1 = короткая версия, 10 байт
* 2 = полная версия, 65536 байт
* edx = указатель на буфер (в приложении) для таблицы * edx = указатель на буфер (в приложении) для таблицы
Возвращаемое значение: Возвращаемое значение:
* функция не возвращает значения * функция не возвращает значения
@ -877,23 +876,7 @@
если файловая система не поддерживается). В текущей версии ядра если файловая система не поддерживается). В текущей версии ядра
для жёстких дисков поддерживаются только FAT16, FAT32 и NTFS. для жёстких дисков поддерживаются только FAT16, FAT32 и NTFS.
* +6: 4 db: зарезервировано * +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
* формат дальнейших данных зависит от файловой системы,
может меняться с изменениями в ядре и поэтому не описывается
Замечания: Замечания:
* Короткая таблица может быть использована для получения информации * Короткая таблица может быть использована для получения информации
об имеющихся устройствах. об имеющихся устройствах.

View File

@ -846,7 +846,6 @@ Parameters:
* ebx = 11 - subfunction number * ebx = 11 - subfunction number
* ecx = type of the table: * ecx = type of the table:
* 1 = short version, 10 bytes * 1 = short version, 10 bytes
* 2 = full version, 65536 bytes
* edx = pointer to the buffer (in the application) for the table * edx = pointer to the buffer (in the application) for the table
Returned value: Returned value:
* function does not return 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 the file system is not supported). Current version of the kernel
supports only FAT16, FAT32 and NTFS for hard disks. supports only FAT16, FAT32 and NTFS for hard disks.
* +6: 4 db: reserved * +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: Remarks:
* The short table can be used for obtaining the information about * The short table can be used for obtaining the information about
available devices. available devices.

View File

@ -2248,27 +2248,15 @@ sysfn_minimize: ; 18.10 = minimize window
;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------
align 4 align 4
sysfn_getdiskinfo: ; 18.11 = get disk info table sysfn_getdiskinfo: ; 18.11 = get disk info table
; cmp ecx,1
dec ecx dec ecx
jnz full_table jnz .exit
small_table: .small_table:
call for_all_tables
mov ecx, 10
cld
rep movsb
ret
for_all_tables:
mov edi, edx mov edi, edx
mov esi, DRIVE_DATA mov esi, DRIVE_DATA
ret mov ecx, DRIVE_DATA_SIZE ;10
full_table:
; cmp ecx,2
dec ecx
jnz exit_for_anyone
call for_all_tables
mov ecx, DRIVE_DATA_SIZE/4
cld cld
rep movsd rep movsb
.exit:
ret ret
;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------
sysfn_lastkey: ; 18.12 = return 0 (backward compatibility) sysfn_lastkey: ; 18.12 = return 0 (backward compatibility)