/kernel/trunk/fs/fs_lfn.inc |
---|
388,6 → 388,8 |
dd 0 |
dd fs_RamdiskDelete |
dd fs_RamdiskCreateFolder |
dd fs_NotImplemented |
dd fs_NotImplemented |
fs_NumRamdiskServices = ($ - fs_RamdiskServices)/4 |
fs_OnFloppy: |
419,6 → 421,8 |
dd 0 |
dd fs_FloppyDelete |
dd fs_FloppyCreateFolder |
dd fs_NotImplemented |
dd fs_NotImplemented |
fs_NumFloppyServices = ($ - fs_FloppyServices)/4 |
fs_OnHd0: |
492,6 → 496,8 |
dd 0 |
dd fs_HdDelete |
dd fs_HdCreateFolder |
dd fs_NotImplemented |
dd fs_NotImplemented |
fs_NumHdServices = ($ - fs_HdServices)/4 |
;******************************************************* |
500,6 → 506,7 |
mov [ChannelNumber],1 |
mov [DiskNumber],0 |
push 6 |
push 1 |
jmp fs_OnCd |
fs_OnCd1: |
call reserve_cd |
506,6 → 513,7 |
mov [ChannelNumber],1 |
mov [DiskNumber],1 |
push 4 |
push 2 |
jmp fs_OnCd |
fs_OnCd2: |
call reserve_cd |
512,6 → 520,7 |
mov [ChannelNumber],2 |
mov [DiskNumber],0 |
push 2 |
push 3 |
jmp fs_OnCd |
fs_OnCd3: |
call reserve_cd |
518,10 → 527,12 |
mov [ChannelNumber],2 |
mov [DiskNumber],1 |
push 0 |
push 4 |
fs_OnCd: |
call reserve_cd_channel |
pop eax |
mov [hdpos], eax |
mov [cdpos], eax |
pop eax |
cmp ecx, 0x100 |
jae .nf |
push ecx ebx |
566,6 → 577,10 |
dd fs_CdGetFileInfo |
dd fs_NotImplemented |
dd 0 |
dd fs_NotImplemented |
dd fs_NotImplemented |
dd fs_EjectDeviceTray |
dd fs_LoadDeviceTray |
fs_NumCdServices = ($ - fs_CdServices)/4 |
;******************************************************* |
/kernel/trunk/fs/iso9660.inc |
---|
489,8 → 489,20 |
pop edi |
xor eax, eax |
ret |
;---------------------------------------------------------------- |
fs_EjectDeviceTray: |
call clear_CD_cache |
call allow_medium_removal |
call EjectMedium |
ret |
;---------------------------------------------------------------- |
fs_LoadDeviceTray: |
call LoadMedium |
ret |
;---------------------------------------------------------------- |
cd_find_lfn: |
mov [cd_appl_data],0 |
; in: esi+ebp -> name |
; out: CF=1 - file not found |
; else CF=0 and [cd_current_pointer_of_input] direntry |
497,10 → 509,11 |
push eax esi |
; 16 ñåêòîð íà÷àëî íàáîðà äåñêðèïòîðîâ òîìîâ |
mov [CDSectorAddress],dword 15 |
mov [CDDataBuf_pointer],CDDataBuf |
call prevent_medium_removal |
.start: |
inc dword [CDSectorAddress] |
mov [CDDataBuf_pointer],CDDataBuf |
call ReadCDWRetr |
call ReadCDWRetr ;_1 |
cmp [DevErrorCode],0 |
jne .access_denied |
; ïðîâåðêà íà âøèâîñòü |
546,6 → 559,7 |
; íåò èñêîìîãî ýëåìåíòà öåïî÷êè |
.access_denied: |
pop esi eax |
mov [cd_appl_data],1 |
stc |
ret |
; èñêîìûé ýëåìåíò öåïî÷êè íàéäåí |
568,6 → 582,7 |
jmp .nested |
@@: |
pop esi eax |
mov [cd_appl_data],1 |
clc |
ret |