Subversion Repositories Kolibri OS

Compare Revisions

No changes between revisions

Regard whitespace Rev 1893 → Rev 1206

/kernel/branches/net/fs/fat12.inc
65,13 → 65,13
 
mov [save_flag],0
mov [path_pointer_flp],edi
test esi,esi ; return ramdisk root
jnz fr_noroot_1
cmp esi,0 ; return ramdisk root
jne fr_noroot_1
cmp ebx,224/16
jbe fr_do_1
mov eax,5
xor ebx,ebx
mov [flp_status],ebx
mov ebx,0
mov [flp_status],0
ret
 
fr_do_1:
88,17 → 88,14
shl ecx,9
cld
rep movsb
xor eax,eax
xor ebx,ebx
; mov eax,0 ; ok read
; mov ebx,0
mov [flp_status],eax
mov eax,0 ; ok read
mov ebx,0
mov [flp_status],0
ret
fdc_status_error_1:
xor eax,eax
mov [flp_status],eax
mov [flp_status],0
mov eax,10
or ebx,-1
mov ebx,-1
ret
 
fr_noroot_1:
105,12 → 102,12
sub esp,32
call expand_filename
frfloppy_1:
test ebx,ebx
jnz frfl5_1
cmp ebx,0
jne frfl5_1
mov ebx,1
frfl5_1:
test ecx,ecx
jnz frfl6_1
cmp ecx,0
jne frfl6_1
mov ecx,1
frfl6_1:
dec ebx
140,14 → 137,14
add ecx,21
add edi, ecx ;Advance to next entry
dec dl
test dl,dl
jnz l.21_1
cmp dl,0
jne l.21_1
dec dh
test dh,dh
jnz l.20_1
cmp dh,0
jne l.20_1
fdc_status_error_3:
mov eax,5 ; file not found ?
or ebx,-1
mov ebx,-1
add esp,32+28
mov [flp_status],0
ret
235,8 → 232,8
add esp,4
pop ebx ; ebx <- eax : size of file
add esp,36
xor eax,eax
mov [flp_status],eax
mov eax,0
mov [flp_status],0
ret
 
fdc_status_error_5:
502,8 → 499,8
div ebx
mov [FDD_Track],al
mov [FDD_Head],0
test edx,edx
jz no_head_2
cmp edx,0
je no_head_2
inc [FDD_Head]
no_head_2:
mov dl,[old_track]
2134,7 → 2131,7
popa
pop edi
xor eax, eax
cmp [FDC_Status], al
cmp [FDC_Status], 0
jz @f
mov al, 11
@@:
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/fat32.inc
169,7 → 169,6
call clear_hd_cache
@@:
pop eax
sti
.ret:
ret
 
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/fs.inc
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/fs_lfn.inc
1,6 → 1,6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; Copyright (C) KolibriOS team 2004-2009. All rights reserved. ;;
;; Copyright (C) KolibriOS team 2004-2008. All rights reserved. ;;
;; Distributed under terms of the GNU General Public License ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
372,7 → 372,7
mov edi, fs_additional_handlers
@@:
cmp dword [edi], 0
jz .notfound
jz @f
call dword [edi]
scasd
scasd
967,76 → 967,43
ret
 
sys_current_directory:
; mov esi, [current_slot]
; mov esi, [esi+APPDATA.cur_dir]
; mov edx, esi
 
;get length string of appdata.cur_dir
mov eax, [current_slot]
mov edi, [eax+APPDATA.cur_dir]
 
dec ebx
mov esi, [current_slot]
mov esi, [esi+APPDATA.cur_dir]
mov edx, esi
dec eax
jz .set
dec ebx
dec eax
jz .get
ret
.get:
; sysfunction 30.2: [for app] eax=30,ebx=2,ecx->buffer,edx=len
; for our code: ebx->buffer,ecx=len
max_cur_dir equ 0x1000
 
mov ebx,edi
 
push ecx
push edi
 
xor eax,eax
mov ecx,max_cur_dir
 
repne scasb ;find zerro at and string
jnz .error ; no zero in cur_dir: internal error, should not happen
 
sub edi,ebx ;lenght for copy
inc edi
mov [esp+32+8],edi ;return in eax
 
cmp edx, edi
@@:
lodsb
test al, al
jnz @b
sub esi, edx
inc esi
mov [esp+36], esi
cmp ecx, esi
jbe @f
mov edx, edi
mov ecx, esi
@@:
;source string
pop esi
;destination string
pop edi
cmp edx, 1
cmp ecx, 1
jbe .ret
 
mov al,'/' ;start string with '/'
mov esi, edx
mov edi, ebx
mov al, '/'
stosb
mov ecx,edx
rep movsb ;copy string
.ret: ret
 
.error: add esp,8
or dword [esp+32],-1 ;error not found zerro at string ->[eax+APPDATA.cur_dir]
dec ecx
dec ecx
rep movsb
mov byte [edi], 0
.ret:
ret
.set:
; sysfunction 30.1: [for app] eax=30,ebx=1,ecx->string
; for our code: ebx->string to set
; use generic resolver with APPDATA.cur_dir as destination
push max_cur_dir ;0x1000
push edi ;destination
mov ebx,ecx
call get_full_file_name
ret
 
; in: ebx = file name, [esp+4] = destination, [esp+8] = sizeof destination
; destroys all registers except ebp,esp
get_full_file_name:
push ebp
mov esi, [current_slot]
mov esi, [esi+APPDATA.cur_dir]
mov edx, esi
@@:
inc esi
cmp byte [esi-1], 0
1045,7 → 1012,6
cmp byte [ebx], '/'
jz .set_absolute
; string gives relative path
mov edi, [esp+8] ; destination
.relative:
cmp byte [ebx], 0
jz .set_ok
1066,67 → 1032,33
dec esi
cmp byte [esi], '/'
jnz @b
mov byte [esi], 0
add ebx, 3
jmp .relative
.set_ok:
cmp edx, edi ; is destination equal to APPDATA.cur_dir?
jz .set_ok.cur_dir
sub esi, edx
cmp esi, [esp+12]
jb .set_ok.copy
.fail:
mov byte [edi], 0
xor eax, eax ; fail
pop ebp
ret 8
.set_ok.copy:
mov ecx, esi
mov esi, edx
rep movsb
mov byte [edi], 0
.ret.ok:
mov al, 1 ; ok
pop ebp
ret 8
.set_ok.cur_dir:
mov byte [esi], 0
jmp .ret.ok
.doset_relative:
cmp edx, edi
jz .doset_relative.cur_dir
sub esi, edx
cmp esi, [esp+12]
jae .fail
mov ecx, esi
mov esi, edx
mov edx, edi
rep movsb
jmp .doset_relative.copy
.doset_relative.cur_dir:
mov edi, esi
.doset_relative.copy:
add edx, [esp+12]
mov byte [edi], '/'
inc edi
cmp edi, edx
jae .overflow
add edx, 0x1000
mov byte [esi], '/'
inc esi
cmp esi, edx
jae .overflow_esi
@@:
mov al, [ebx]
inc ebx
stosb
mov [esi], al
inc esi
test al, al
jz .ret.ok
cmp edi, edx
jz .set_ok
cmp esi, edx
jb @b
.overflow:
dec edi
jmp .fail
.overflow_esi:
mov byte [esi-1], 0 ; force null-terminated string
.set_ok:
ret
.set_absolute:
lea esi, [ebx+1]
call process_replace_file_name
mov edi, [esp+8]
mov edx, [esp+12]
add edx, edi
mov edi, edx
add edx, 0x1000
.set_copy:
lodsb
stosb
1135,11 → 1067,13
.set_copy_cont:
cmp edi, edx
jb .set_copy
jmp .overflow
.overflow_edi:
mov byte [edi-1], 0
ret
.set_part2:
mov esi, ebp
xor ebp, ebp
test esi, esi
jz .ret.ok
jz .set_ok
mov byte [edi-1], '/'
jmp .set_copy_cont
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/iso9660.inc
5,7 → 5,7
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
$Revision:1322 $
$Revision$
 
 
uglobal
625,8 → 625,8
mov ebp,[cd_current_pointer_of_input_2]
mov [cd_current_pointer_of_input],ebp
mov eax,[ebp]
test eax,eax ; âõîäû çàêîí÷èëèñü?
jz .next_sector
cmp eax,0 ; âõîäû çàêîí÷èëèñü?
je .next_sector
cmp ebp,CDDataBuf+2048 ; áóôåð çàêîí÷èëñÿ?
jae .next_sector
movzx eax, byte [ebp]
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/ntfs.inc
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/parse_fn.inc
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo
/kernel/branches/net/fs/part_set.inc
Property changes:
Modified: svn:keywords
-Rev
\ No newline at end of property
+Revision
\ No newline at end of property
Deleted: svn:mergeinfo