diff --git a/kernel/trunk/blkdev/rdsave.inc b/kernel/trunk/blkdev/rdsave.inc index 2e9396e415..158704e2d5 100644 --- a/kernel/trunk/blkdev/rdsave.inc +++ b/kernel/trunk/blkdev/rdsave.inc @@ -21,12 +21,10 @@ saverd_fileinfo: endg sysfn_saveramdisk: ; 18.6 = SAVE FLOPPY IMAGE (HD version only) call restorefatchain - mov eax, saverd_fileinfo + mov ebx, saverd_fileinfo mov [saverd_fileinfo.name], ecx pushad - push eax - call file_system_lfn - pop eax + call file_system_lfn ;in ebx popad mov [esp+32], eax ret diff --git a/kernel/trunk/core/dll.inc b/kernel/trunk/core/dll.inc index 68926ff4fc..6e0a48cb3c 100644 --- a/kernel/trunk/core/dll.inc +++ b/kernel/trunk/core/dll.inc @@ -544,10 +544,8 @@ proc read_file stdcall,file_name:dword, buffer:dword, off:dword,\ mov [name], ebx pushad - push eax - lea eax, [cmd] + lea ebx, [cmd] call file_system_lfn - pop eax popad ret endp diff --git a/kernel/trunk/core/syscall.inc b/kernel/trunk/core/syscall.inc index fd2d017f92..86c80e716f 100644 --- a/kernel/trunk/core/syscall.inc +++ b/kernel/trunk/core/syscall.inc @@ -169,10 +169,6 @@ iglobal dd 0 dd syscall_putimage_palette; 65-PutImagePalette dd sys_process_def ; 66-Process definitions - keyboard - dd 0 - dd 0 - dd 0 - dd file_system_lfn ; 70-Common file system interface, version 2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; NEW SYSTEM FUNCTIONS TABLE ;; @@ -250,7 +246,7 @@ iglobal dd syscall_move_window ; 67-Window move or resize dd f68 ; 68-Some internal services dd sys_debug_services ; 69-Debug - dd cross_order ; 70-Common file system interface, version 2 + dd file_system_lfn ; 70-Common file system interface, version 2 dd syscall_window_settings ; 71-Window settings dd sys_sendwindowmsg ; 72-Send window message times 255 - ( ($-servetable2) /4 ) dd undefined_syscall diff --git a/kernel/trunk/fs/fs_lfn.inc b/kernel/trunk/fs/fs_lfn.inc index e79c1c1ae0..5650b8bff3 100644 --- a/kernel/trunk/fs/fs_lfn.inc +++ b/kernel/trunk/fs/fs_lfn.inc @@ -8,8 +8,8 @@ $Revision$ -image_of_eax EQU esp+36 -image_of_ebx EQU esp+24 +image_of_eax EQU esp+32 +image_of_ebx EQU esp+20 ; System function 70 - files with long names (LFN) ; diamond, 2006 @@ -89,9 +89,8 @@ fs_additional_handlers: dd 0 endg - file_system_lfn: -; in: eax->fileinfo block +; in: ebx->fileinfo block ; operation codes: ; 0 : read file ; 1 : read folder @@ -105,7 +104,6 @@ file_system_lfn: ; 9 : create directory ; parse file name - xchg ebx, eax lea esi, [ebx+20] lodsb test al, al