Rev 89 | Rev 94 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 89 | Rev 90 | ||
---|---|---|---|
Line 274... | Line 274... | ||
274 | add eax,ebp |
274 | add eax,ebp |
275 | cmp esi,eax |
275 | cmp esi,eax |
276 | jb .ansi |
276 | jb .ansi |
277 | .cd_get_parameters_of_file_1: |
277 | .cd_get_parameters_of_file_1: |
278 | mov [edi],byte 0 |
278 | mov [edi],byte 0 |
279 | call .cd_get_parameters_of_file |
279 | call cd_get_parameters_of_file |
280 | add [cd_mem_location],304 |
280 | add [cd_mem_location],304 |
281 | jmp .get_names_from_buffer_1 |
281 | jmp .get_names_from_buffer_1 |
Line 282... | Line 282... | ||
282 | 282 | ||
283 | .ansi_parent_directory: |
283 | .ansi_parent_directory: |
Line 311... | Line 311... | ||
311 | add eax,ebp |
311 | add eax,ebp |
312 | cmp esi,eax |
312 | cmp esi,eax |
313 | jb .unicode |
313 | jb .unicode |
314 | .cd_get_parameters_of_file_2: |
314 | .cd_get_parameters_of_file_2: |
315 | mov [edi],word 0 |
315 | mov [edi],word 0 |
316 | call .cd_get_parameters_of_file |
316 | call cd_get_parameters_of_file |
317 | add [cd_mem_location],560 |
317 | add [cd_mem_location],560 |
318 | jmp .get_names_from_buffer_1 |
318 | jmp .get_names_from_buffer_1 |
Line 319... | Line 319... | ||
319 | 319 | ||
320 | .unicode_parent_directory: |
320 | .unicode_parent_directory: |
Line 326... | Line 326... | ||
326 | @@: |
326 | @@: |
327 | mov [edi],dword 2E002E00h ; '..' |
327 | mov [edi],dword 2E002E00h ; '..' |
328 | add edi,4 |
328 | add edi,4 |
329 | jmp .cd_get_parameters_of_file_2 |
329 | jmp .cd_get_parameters_of_file_2 |
Line -... | Line 330... | ||
- | 330 | ||
- | 331 | .end_buffer: |
|
- | 332 | pop edx edi esi eax |
|
- | 333 | ret |
|
330 | 334 | ||
331 | .cd_get_parameters_of_file: |
335 | cd_get_parameters_of_file: |
- | 336 | mov edi,[cd_mem_location] |
|
332 | mov edi,[cd_mem_location] |
337 | cd_get_parameters_of_file_1: |
333 | ; ïîëó÷àåì àòðèáóòû ôàéëà |
338 | ; ïîëó÷àåì àòðèáóòû ôàéëà |
334 | xor eax,eax |
339 | xor eax,eax |
335 | ; ôàéë íå àðõèâèðîâàëñÿ |
340 | ; ôàéë íå àðõèâèðîâàëñÿ |
336 | inc al |
341 | inc al |
Line 398... | Line 403... | ||
398 | mov [edi+32+4],eax |
403 | mov [edi+32+4],eax |
399 | mov eax,[ebp-23] |
404 | mov eax,[ebp-23] |
400 | mov [edi+32],eax |
405 | mov [edi+32],eax |
401 | ret |
406 | ret |
Line -... | Line 407... | ||
- | 407 | ||
- | 408 | ;---------------------------------------------------------------- |
|
- | 409 | ; |
|
- | 410 | ; fs_CdGetFileInfo - LFN variant for CD |
|
- | 411 | ; get file/directory attributes structure |
|
- | 412 | ; |
|
- | 413 | ;---------------------------------------------------------------- |
|
- | 414 | fs_CdGetFileInfo: |
|
- | 415 | cmp byte [esi], 0 |
|
- | 416 | jnz @f |
|
402 | 417 | mov eax, 2 |
|
- | 418 | ret |
|
- | 419 | @@: |
|
- | 420 | push edi ebp |
|
- | 421 | call cd_find_lfn |
|
- | 422 | pushfd |
|
- | 423 | cmp [DevErrorCode], 0 |
|
- | 424 | jz @f |
|
- | 425 | popfd |
|
- | 426 | pop ebp edi |
|
- | 427 | mov eax, 11 |
|
- | 428 | ret |
|
- | 429 | @@: |
|
- | 430 | popfd |
|
- | 431 | jnc @f |
|
- | 432 | pop ebp edi |
|
- | 433 | mov eax, ERROR_FILE_NOT_FOUND |
|
- | 434 | ret |
|
- | 435 | @@: |
|
- | 436 | ||
- | 437 | mov edi, edx |
|
- | 438 | call cd_get_parameters_of_file_1 |
|
- | 439 | and dword [edi+4], 0 |
|
- | 440 | pop ebp |
|
403 | .end_buffer: |
441 | pop ebp edi |
404 | pop edx edi esi eax |
442 | xor eax, eax |
Line 405... | Line 443... | ||
405 | ret |
443 | ret |
406 | 444 | ||
407 | cd_find_lfn: |
445 | cd_find_lfn: |