Rev 536 | Rev 588 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 536 | Rev 585 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | $Revision: 536 $ |
1 | $Revision: 585 $ |
2 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
3 | ;; ;; |
3 | ;; ;; |
4 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
4 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
5 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; Distributed under terms of the GNU General Public License ;; |
6 | ;; ;; |
6 | ;; ;; |
Line 487... | Line 487... | ||
487 | pop ebp |
487 | pop ebp |
488 | and dword [edi+4], 0 |
488 | and dword [edi+4], 0 |
489 | pop edi |
489 | pop edi |
490 | xor eax, eax |
490 | xor eax, eax |
491 | ret |
491 | ret |
- | 492 | ;---------------------------------------------------------------- |
|
- | 493 | fs_EjectDeviceTray: |
|
- | 494 | call clear_CD_cache |
|
- | 495 | call allow_medium_removal |
|
- | 496 | call EjectMedium |
|
- | 497 | ret |
|
- | 498 | ;---------------------------------------------------------------- |
|
- | 499 | fs_LoadDeviceTray: |
|
- | 500 | call LoadMedium |
|
- | 501 | ret |
|
- | 502 | ;---------------------------------------------------------------- |
|
Line 492... | Line 503... | ||
492 | 503 | ||
- | 504 | cd_find_lfn: |
|
493 | cd_find_lfn: |
505 | mov [cd_appl_data],0 |
494 | ; in: esi+ebp -> name |
506 | ; in: esi+ebp -> name |
495 | ; out: CF=1 - file not found |
507 | ; out: CF=1 - file not found |
496 | ; else CF=0 and [cd_current_pointer_of_input] direntry |
508 | ; else CF=0 and [cd_current_pointer_of_input] direntry |
497 | push eax esi |
509 | push eax esi |
498 | ; 16 ñåêòîð íà÷àëî íàáîðà äåñêðèïòîðîâ òîìîâ |
510 | ; 16 ñåêòîð íà÷àëî íàáîðà äåñêðèïòîðîâ òîìîâ |
- | 511 | mov [CDSectorAddress],dword 15 |
|
- | 512 | mov [CDDataBuf_pointer],CDDataBuf |
|
499 | mov [CDSectorAddress],dword 15 |
513 | call prevent_medium_removal |
500 | .start: |
514 | .start: |
501 | inc dword [CDSectorAddress] |
- | |
502 | mov [CDDataBuf_pointer],CDDataBuf |
515 | inc dword [CDSectorAddress] |
503 | call ReadCDWRetr |
516 | call ReadCDWRetr ;_1 |
504 | cmp [DevErrorCode],0 |
517 | cmp [DevErrorCode],0 |
505 | jne .access_denied |
518 | jne .access_denied |
506 | ; ïðîâåðêà íà âøèâîñòü |
519 | ; ïðîâåðêà íà âøèâîñòü |
507 | cmp [CDDataBuf+1],dword 'CD00' |
520 | cmp [CDDataBuf+1],dword 'CD00' |
Line 544... | Line 557... | ||
544 | cmp eax,0 |
557 | cmp eax,0 |
545 | ja .read_to_buffer |
558 | ja .read_to_buffer |
546 | ; íåò èñêîìîãî ýëåìåíòà öåïî÷êè |
559 | ; íåò èñêîìîãî ýëåìåíòà öåïî÷êè |
547 | .access_denied: |
560 | .access_denied: |
548 | pop esi eax |
561 | pop esi eax |
- | 562 | mov [cd_appl_data],1 |
|
549 | stc |
563 | stc |
550 | ret |
564 | ret |
551 | ; èñêîìûé ýëåìåíò öåïî÷êè íàéäåí |
565 | ; èñêîìûé ýëåìåíò öåïî÷êè íàéäåí |
552 | .found: |
566 | .found: |
553 | ; êîíåö ïóòè ôàéëà |
567 | ; êîíåö ïóòè ôàéëà |
Line 566... | Line 580... | ||
566 | mov esi, ebp |
580 | mov esi, ebp |
567 | xor ebp, ebp |
581 | xor ebp, ebp |
568 | jmp .nested |
582 | jmp .nested |
569 | @@: |
583 | @@: |
570 | pop esi eax |
584 | pop esi eax |
- | 585 | mov [cd_appl_data],1 |
|
571 | clc |
586 | clc |
572 | ret |
587 | ret |
Line 573... | Line 588... | ||
573 | 588 | ||
574 | cd_find_name_in_buffer: |
589 | cd_find_name_in_buffer: |