forked from KolibriOS/kolibrios
support for PnP disks, part 1
git-svn-id: svn://kolibrios.org@2119 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
0c8c27e46c
commit
1eb4e63e51
1215
kernel/trunk/fs/disk.inc
Normal file
1215
kernel/trunk/fs/disk.inc
Normal file
File diff suppressed because it is too large
Load Diff
@ -60,6 +60,7 @@ ERROR_MEMORY_POINTER = 7
|
||||
ERROR_DISK_FULL = 8
|
||||
ERROR_FAT_TABLE = 9
|
||||
ERROR_ACCESS_DENIED = 10
|
||||
ERROR_DEVICE = 11
|
||||
|
||||
PUSHAD_EAX equ [esp+28]
|
||||
PUSHAD_ECX equ [esp+24]
|
||||
|
@ -85,6 +85,7 @@ virtual_root_query:
|
||||
|
||||
fs_additional_handlers:
|
||||
dd biosdisk_handler, biosdisk_enum_root
|
||||
dd dyndisk_handler, dyndisk_enum_root
|
||||
; add new handlers here
|
||||
dd 0
|
||||
|
||||
@ -383,7 +384,8 @@ file_system_lfn:
|
||||
.notfounda:
|
||||
cmp edi, esp
|
||||
jnz .notfound
|
||||
add esp, 8
|
||||
call dword [edi+4]
|
||||
add esp, 16
|
||||
jmp .notfound
|
||||
|
||||
.found1:
|
||||
@ -850,6 +852,8 @@ biosdisk_handler:
|
||||
jmp file_system_lfn.maindir_noesi
|
||||
@@:
|
||||
push ecx
|
||||
push ecx
|
||||
push biosdisk_cleanup
|
||||
push fs_OnBd
|
||||
mov edi, esp
|
||||
jmp file_system_lfn.found2
|
||||
@ -858,10 +862,11 @@ fs_BdNext:
|
||||
cmp eax, [BiosDiskPartitions+ecx*4]
|
||||
inc eax
|
||||
cmc
|
||||
biosdisk_cleanup:
|
||||
ret
|
||||
|
||||
fs_OnBd:
|
||||
pop edx edx
|
||||
pop edx edx edx edx
|
||||
; edx = disk number, ecx = partition number
|
||||
; esi+ebp = name
|
||||
call reserve_hd1
|
||||
|
@ -234,6 +234,7 @@ include "gui/button.inc"
|
||||
|
||||
; file system
|
||||
|
||||
include "fs/disk.inc" ; support for plug-n-play disks
|
||||
include "fs/fs.inc" ; syscall
|
||||
include "fs/fat32.inc" ; read / write for fat32 filesystem
|
||||
include "fs/ntfs.inc" ; read / write for ntfs filesystem
|
||||
|
Loading…
Reference in New Issue
Block a user