Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 89 → Rev 90

/kernel/trunk/fs/fs_lfn.inc
492,8 → 492,8
mov edx, [ebx+16]
add edx, std_application_base_address
mov eax, [ebx]
cmp eax, 1
ja .not_impl
cmp eax,fs_NumCdServices
jae .not_impl
add ebx, 4
call dword [fs_CdServices + eax*4]
and [cd_status], 0
508,6 → 508,13
fs_CdServices:
dd fs_CdRead
dd fs_CdReadFolder
dd fs_NotImplemented
dd fs_NotImplemented
dd fs_NotImplemented
dd fs_CdGetFileInfo
dd fs_NotImplemented
fs_NumCdServices = ($ - fs_CdServices)/4
 
;*******************************************************
 
fs_HasRamdisk:
/kernel/trunk/fs/iso9660.inc
276,7 → 276,7
jb .ansi
.cd_get_parameters_of_file_1:
mov [edi],byte 0
call .cd_get_parameters_of_file
call cd_get_parameters_of_file
add [cd_mem_location],304
jmp .get_names_from_buffer_1
 
313,7 → 313,7
jb .unicode
.cd_get_parameters_of_file_2:
mov [edi],word 0
call .cd_get_parameters_of_file
call cd_get_parameters_of_file
add [cd_mem_location],560
jmp .get_names_from_buffer_1
 
328,8 → 328,13
add edi,4
jmp .cd_get_parameters_of_file_2
 
.cd_get_parameters_of_file:
.end_buffer:
pop edx edi esi eax
ret
 
cd_get_parameters_of_file:
mov edi,[cd_mem_location]
cd_get_parameters_of_file_1:
; ïîëó÷àåì àòðèáóòû ôàéëà
xor eax,eax
; ôàéë íå àðõèâèðîâàëñÿ
400,10 → 405,43
mov [edi+32],eax
ret
 
.end_buffer:
pop edx edi esi eax
;----------------------------------------------------------------
;
; fs_CdGetFileInfo - LFN variant for CD
; get file/directory attributes structure
;
;----------------------------------------------------------------
fs_CdGetFileInfo:
cmp byte [esi], 0
jnz @f
mov eax, 2
ret
@@:
push edi ebp
call cd_find_lfn
pushfd
cmp [DevErrorCode], 0
jz @f
popfd
pop ebp edi
mov eax, 11
ret
@@:
popfd
jnc @f
pop ebp edi
mov eax, ERROR_FILE_NOT_FOUND
ret
@@:
mov edi, edx
call cd_get_parameters_of_file_1
and dword [edi+4], 0
pop ebp
pop ebp edi
xor eax, eax
ret
 
cd_find_lfn:
; in: esi->name
; out: CF=1 - file not found