sysfunction 70.5: small change

git-svn-id: svn://kolibrios.org@6876 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
pathoswithin 2017-03-07 16:28:02 +00:00
parent b27bd68162
commit 45aee00e6b
6 changed files with 21 additions and 6 deletions

View File

@ -4230,7 +4230,8 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
(блока данных входа каталога), указанном в описании подфункции 1, (блока данных входа каталога), указанном в описании подфункции 1,
но без имени файла, за исключением корневого каталога. но без имени файла, за исключением корневого каталога.
Замечания: Замечания:
* Для корневого каталога возвращается размер и имя раздела. * Для корневого каталога возвращается размер раздела,
а при указании кодировки (не ноль), также его имя.
* Для устройства возвращается только размер. * Для устройства возвращается только размер.
---------------------- Константы для регистров: ---------------------- ---------------------- Константы для регистров: ----------------------

View File

@ -4186,7 +4186,8 @@ Information on file is returned in the BDFE format (block of data
for folder entry), explained in the description of subfunction 1, for folder entry), explained in the description of subfunction 1,
but without filename, except the root folder. but without filename, except the root folder.
Remarks: Remarks:
* For the root folder returns the size and the volume label. * For the root folder returns the partition size,
and if encoding byte is non-zero, the volume label.
* For the device returns only the size. * For the device returns only the size.
---------------------- Constants for registers: ---------------------- ---------------------- Constants for registers: ----------------------

View File

@ -2103,6 +2103,7 @@ ext_GetFileInfo:
push eax push eax
call ext_unlock call ext_unlock
pop eax pop eax
@@:
ret ret
.volume: .volume:
@ -2116,6 +2117,8 @@ ext_GetFileInfo:
mov eax, [ebx+8] mov eax, [ebx+8]
mov byte [edi], 8 mov byte [edi], 8
mov [edi+4], eax mov [edi+4], eax
test eax, eax
jz @b
lea esi, [ebp+EXTFS.superblock.volumeLabel] lea esi, [ebp+EXTFS.superblock.volumeLabel]
mov ecx, 16 mov ecx, 16
add edi, 40 add edi, 40

View File

@ -2921,6 +2921,7 @@ fat_GetFileInfo:
push eax push eax
call fat_unlock call fat_unlock
pop eax pop eax
@@:
ret ret
.volume: .volume:
@ -2934,6 +2935,8 @@ fat_GetFileInfo:
mov eax, [ebx+8] mov eax, [ebx+8]
mov byte [edi], 8 mov byte [edi], 8
mov [edi+4], eax mov [edi+4], eax
test eax, eax
jz @b
lea esi, [ebp+FAT.volumeLabel] lea esi, [ebp+FAT.volumeLabel]
mov ecx, 11 mov ecx, 11
@@: @@:

View File

@ -500,6 +500,8 @@ fs_CdGetFileInfo:
ret ret
.volume: .volume:
test eax, eax
jz .size
mov ecx, 16 mov ecx, 16
mov esi, CDDataBuf+40 mov esi, CDDataBuf+40
add edi, 40 add edi, 40
@ -538,6 +540,7 @@ fs_CdGetFileInfo:
xor eax, eax xor eax, eax
mov [edx+36], eax mov [edx+36], eax
stosw stosw
mov byte [edx], 8
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------

View File

@ -1758,10 +1758,10 @@ ntfs_datetime_to_bdfe:
;---------------------------------------------------------------- ;----------------------------------------------------------------
ntfs_GetFileInfo: ntfs_GetFileInfo:
call ntfs_lock
mov edi, [ebx+16] mov edi, [ebx+16]
cmp byte [esi], 0 cmp byte [esi], 0
jz .volume jz .volume
call ntfs_lock
call ntfs_find_lfn call ntfs_find_lfn
jnc .found jnc .found
test eax, eax test eax, eax
@ -1775,18 +1775,22 @@ ntfs_GetFileInfo:
.end: .end:
call ntfs_unlock call ntfs_unlock
xor eax, eax xor eax, eax
@@:
ret ret
.volume: .volume:
mov byte [edi], 8
mov eax, [ebx+8]
mov [edi+4], eax
mov eax, dword [ebp+NTFS.Length] mov eax, dword [ebp+NTFS.Length]
mov edx, dword [ebp+NTFS.Length+4] mov edx, dword [ebp+NTFS.Length+4]
shld edx, eax, 9 shld edx, eax, 9
shl eax, 9 shl eax, 9
mov [edi+36], edx mov [edi+36], edx
mov [edi+32], eax mov [edi+32], eax
mov eax, [ebx+8]
mov byte [edi], 8
mov [edi+4], eax
test eax, eax
jz @b
call ntfs_lock
add edi, 40 add edi, 40
mov [ebp+NTFS.cur_buf], edi mov [ebp+NTFS.cur_buf], edi
mov [ebp+NTFS.cur_iRecord], 3 mov [ebp+NTFS.cur_iRecord], 3