39,7 → 39,7 |
draw_left_sort_button: |
mov bx,[left_panel_x.start_x] |
add bx,[left_panel_x.size_x] |
sub ebx,50+15 |
sub ebx,50+15+12 |
mov cx,[left_panel_y.start_y] |
call calclulate_sort_button_1 |
mov edx,145 |
80,7 → 80,7 |
cmp ebp,4 |
jne @f |
|
mov bx,15 |
mov bx,15+12 |
jmp .continue |
;-------------------------------------- |
@@: |
129,7 → 129,7 |
draw_right_sort_button: |
mov bx,[right_panel_x.start_x] |
add bx,[right_panel_x.size_x] |
sub ebx,50+15 |
sub ebx,50+15+12 |
mov cx,[right_panel_y.start_y] |
call calclulate_sort_button_1 |
mov edx,149 |
283,37 → 283,20 |
pop edx ecx ebx eax |
ret |
;------------------------------------------------------------------------------ |
decimal_string_4: |
push eax ecx edx |
xor ecx,ecx |
mov [ebx],byte '0' |
inc ebx |
decimal_string: |
push eax ebx ecx edx |
mov ecx,10 |
;-------------------------------------- |
.p3: |
xor edx,edx |
push ebx |
mov ebx,10 |
div ebx |
pop ebx |
div ecx |
add edx,48 |
push edx |
inc ecx |
cmp eax,0 |
jne .p3 |
|
cmp ecx,3 |
jbe .p4 |
|
mov ecx,4 |
mov [ebx],dl |
dec ebx |
;-------------------------------------- |
.p4: |
pop edx |
mov [ebx],dl |
inc ebx |
loop .p4 |
test eax,eax |
jnz .p3 |
|
pop edx ecx eax |
pop edx ecx ebx eax |
ret |
;------------------------------------------------------------------------------ |
draw_type_size_date: |
430,9 → 413,9 |
pop ecx |
jz @f |
|
mov ebx,size_table |
call decimal_string_4 |
mov [ebx],byte 'E' ; Exa Byte |
mov ebx,size_table+3 |
call decimal_string |
mov [ebx+1],byte 'E' ; Exa Byte |
jmp .size_convert_end |
;-------------------------------------- |
@@: |
442,9 → 425,9 |
pop ecx |
jz @f |
|
mov ebx,size_table |
call decimal_string_4 |
mov [ebx],byte 'P' ; Peta Byte |
mov ebx,size_table+3 |
call decimal_string |
mov [ebx+1],byte 'P' ; Peta Byte |
jmp .size_convert_end |
;-------------------------------------- |
@@: |
454,9 → 437,9 |
pop ecx |
jz @f |
|
mov ebx,size_table |
call decimal_string_4 |
mov [ebx],byte 'T' ; Tera Byte |
mov ebx,size_table+3 |
call decimal_string |
mov [ebx+1],byte 'T' ; Tera Byte |
jmp .size_convert_end |
;-------------------------------------- |
@@: |
466,9 → 449,9 |
pop ecx |
jz @f |
|
mov ebx,size_table |
call decimal_string_4 |
mov [ebx],byte 'G' ; Giga Byte |
mov ebx,size_table+3 |
call decimal_string |
mov [ebx+1],byte 'G' ; Giga Byte |
jmp .size_convert_end |
;-------------------------------------- |
@@: |
478,9 → 461,9 |
test eax,eax |
jz @f |
|
mov ebx,size_table |
call decimal_string_4 |
mov [ebx],byte 'M' ; Mega Byte |
mov ebx,size_table+3 |
call decimal_string |
mov [ebx+1],byte 'M' ; Mega Byte |
jmp .size_convert_end |
;-------------------------------------- |
@@: |
489,39 → 472,27 |
test eax,eax |
jz @f |
|
mov ebx,size_table |
call decimal_string_4 |
mov [ebx],byte 'K' ; Kilo Byte |
mov ebx,size_table+3 |
call decimal_string |
mov [ebx+1],byte 'K' ; Kilo Byte |
jmp .size_convert_end |
;-------------------------------------- |
@@: |
mov eax,ebx |
;.size_convert: |
mov ebx,size_table |
call decimal_string_4 |
mov ebx,size_table+4 |
call decimal_string |
;-------------------------------------- |
.size_convert_end: |
cmp [size_table],byte '0' |
jne @f |
|
mov [size_table],byte ' ' |
pop edx ebx |
;-------------------------------------- |
@@: |
cmp [size_table+4],byte ' ' |
.date: |
cmp [edx],word '..' |
jne @f |
|
mov esi,size_table+3 |
mov edi,esi |
inc edi |
mov ecx,5 |
std |
rep movsb |
jmp @r |
;-------------------------------------- |
cmp [edx+2],byte 0 |
je .not_show_date |
@@: |
pop edx ebx |
;-------------------------------------- |
.date: |
xor eax,eax |
mov al,[edx-40+28] |
push ebx |
531,14 → 502,16 |
mov ebx,date_table+3 |
call decimal_string_2 |
mov ax,[edx-40+30] |
mov ebx,year_table |
call decimal_string_4 |
mov ax,[year_table+2] |
mov [date_table+6],ax |
lea ebx,[year_table+4] |
mov [ebx-4], dword '0000' |
mov [ebx], byte '0' |
call decimal_string |
mov eax,[year_table+1] |
mov [date_table+6],eax |
pop ebx |
ror ebx,16 |
add bx,[left_panel_x.size_x] |
sub ebx,122+12+15 |
sub ebx,161 ;122+12+15 |
rol ebx,16 |
mov ecx,0 |
cmp [marked_file],byte 0 |
547,7 → 520,9 |
mov ecx,0xff0000 |
;-------------------------------------- |
@@: |
mcall 4,,,type_table,20 |
mcall 4,,,type_table,22 |
;-------------------------------------- |
.not_show_date: |
popa |
ret |
;------------------------------------------------------------------------------ |
660,7 → 635,7 |
xor edx,edx |
div ebx |
pop edx ebx |
sub eax,23+2+2 |
sub eax,23+2+2+2 |
mov esi,[file_name_length] |
mov [temp_counter_1],0 |
cmp esi,eax |