Subversion Repositories Kolibri OS

Rev

Rev 9690 | Rev 9747 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9690 Rev 9728
Line 284... Line 284...
284
	xor	ebx,ebx
284
	xor	ebx,ebx
285
	mov	bx,fb_font_size_x
285
	mov	bx,fb_font_size_x
286
	xor	edx,edx
286
	xor	edx,edx
287
	div	ebx
287
	div	ebx
288
	pop	edx ebx
288
	pop	edx ebx
289
	sub	eax,23+2+2
289
	sub	eax,23+2+2+2
290
	mov	esi,fb_file_name_length
290
	mov	esi,fb_file_name_length
291
	mov	fb_temp_counter,0
291
	mov	fb_temp_counter,0
292
	mov	fb_display_name_max_length,eax
292
	mov	fb_display_name_max_length,eax
293
	cmp	esi,eax
293
	cmp	esi,eax
294
	jbe	@f
294
	jbe	@f
Line 510... Line 510...
510
	jmp	.date
510
	jmp	.date
511
;-----------------------------------------
511
;-----------------------------------------
512
align 4
512
align 4
513
.call_decimal_string:
513
.call_decimal_string:
514
	mov	ebx,fb_type_table
514
	mov	ebx,fb_type_table
515
	add	ebx,6
515
	add	ebx,9
516
	call	fb_decimal_string_4
516
	call	fb_decimal_string
517
	mov	[ebx],dl
517
	mov	[ebx+1],dl
518
	jmp	.size_convert_end
518
	jmp	.size_convert_end
519
;-----------------------------------------
519
;-----------------------------------------
520
.qword_div:
520
.qword_div:
521
	mov	eax,[edx-40+32]
521
	mov	eax,[edx-40+32]
522
	mov	ebx,[edx-40+32+4]
522
	mov	ebx,[edx-40+32+4]
Line 590... Line 590...
590
	mov	dl,byte 'K' ; Kilo Byte
590
	mov	dl,byte 'K' ; Kilo Byte
591
	jmp	.call_decimal_string
591
	jmp	.call_decimal_string
592
@@:
592
@@:
593
	mov	eax,ebx
593
	mov	eax,ebx
594
	mov	ebx,fb_type_table
594
	mov	ebx,fb_type_table
595
	add	ebx,6
595
	add	ebx,10
596
	call	fb_decimal_string_4
596
	call	fb_decimal_string
597
.size_convert_end:
597
.size_convert_end:
598
	mov	eax,fb_type_table
-
 
599
	add	eax,6
-
 
600
	push	edi
-
 
601
	cmp	[eax],byte '0'
-
 
602
	jne	@f
-
 
603
	mov	[eax],byte ' '
-
 
604
@@:
-
 
605
	add	eax,3
-
 
606
@@:
-
 
607
	cmp	[eax+1],byte ' '
-
 
608
	jne	@f
-
 
609
	mov	esi,eax
-
 
610
	mov	edi,esi
-
 
611
	inc	edi
-
 
612
	mov	ecx,5
-
 
613
	std
-
 
614
	rep	movsb
-
 
615
	jmp	@r
-
 
616
@@:
-
 
617
	pop	edi
-
 
618
	pop	edx ebx
598
	pop	edx ebx
619
;-----------------------------------------
599
;-----------------------------------------
620
.date:
600
.date:
-
 
601
	cmp	[edx],word '..'
-
 
602
	jne	@f
-
 
603
	
-
 
604
	cmp	[edx+2],byte 0
-
 
605
	je	.not_show_date
-
 
606
@@:
621
	xor	eax,eax
607
	xor	eax,eax
622
	mov	al,[edx-40+28]
608
	mov	al,[edx-40+28]
623
	push	ebx
609
	push	ebx
624
	mov	ebx,fb_type_table
610
	mov	ebx,fb_type_table
625
	add	ebx,12
611
	add	ebx,12
Line 628... Line 614...
628
	mov	ebx,fb_type_table
614
	mov	ebx,fb_type_table
629
	add	ebx,12+3
615
	add	ebx,12+3
630
	call	fb_decimal_string_2 ; month
616
	call	fb_decimal_string_2 ; month
631
	mov	ax,[edx-40+30]
617
	mov	ax,[edx-40+30]
632
	mov	ebx,fb_type_table
618
	mov	ebx,fb_type_table
633
	add	ebx,12+15
619
	add	ebx,12+9
634
	call	fb_decimal_string_4 ; year
-
 
635
	mov	ebx,fb_type_table
620
	mov	[ebx-3], dword '0000'
636
	mov	ax,[ebx+12+15+2]
621
	call	fb_decimal_string ; year
637
	mov	[ebx+12+6],ax
-
 
638
	pop	ebx
622
	pop	ebx
639
;-----------------------------------------
623
;-----------------------------------------
640
	ror	ebx,16
624
	ror	ebx,16
641
	add	bx,fb_size_x
625
	add	bx,fb_size_x
642
	sub	ebx,122+12+15
626
	sub	ebx,161 ; 122+12+15
643
	rol	ebx,16
627
	rol	ebx,16
644
	mov	ecx,fb_text_color
628
	mov	ecx,fb_text_color
645
	cmp	fb_marked_file,0
629
	cmp	fb_marked_file,0
646
	je	@f
630
	je	@f
647
	mov	ecx,fb_reduct_text_color
631
	mov	ecx,fb_reduct_text_color
648
@@:
632
@@:
649
	mov	edx,fb_type_table
633
	mov	edx,fb_type_table
650
	mov	esi,20
634
	mov	esi,22
651
	mov	ax,fb_line_size_y
635
	mov	ax,fb_line_size_y
652
	sub	ax,fb_font_size_y
636
	sub	ax,fb_font_size_y
653
	push	ebx
637
	push	ebx
654
	mov	bx,ax
638
	mov	bx,ax
655
	shr	ax,1
639
	shr	ax,1
Line 665... Line 649...
665
	jne	@f
649
	jne	@f
666
	mov	eax,fb_select_color
650
	mov	eax,fb_select_color
667
@@:
651
@@:
668
	mov	edi,eax
652
	mov	edi,eax
669
	mcall	SF_DRAW_TEXT
653
	mcall	SF_DRAW_TEXT
-
 
654
.not_show_date:
670
	popa
655
	popa
671
	ret
656
	ret
672
;---------------------------------------------------------------------
657
;---------------------------------------------------------------------
673
align 4
658
align 4
674
fb_draw_icon:
659
fb_draw_icon:
Line 752... Line 737...
752
	loop	.p4
737
	loop	.p4
753
	pop	edx ecx ebx eax
738
	pop	edx ecx ebx eax
754
	ret
739
	ret
755
;---------------------------------------------------------------------
740
;---------------------------------------------------------------------
756
align 4
741
align 4
757
fb_decimal_string_4:
742
fb_decimal_string:
758
	push	eax ecx edx
743
	push	eax ebx ecx edx
759
	xor	ecx,ecx
744
	mov	ecx,10
760
	mov	[ebx],byte '0'
745
;--------------------------------------
761
	inc	ebx
-
 
762
.p3:
746
.p3:
763
	xor	edx,edx
747
	xor	edx,edx
764
	push	ebx
-
 
765
	mov	ebx,10
-
 
766
	div	ebx
748
	div	ecx
767
	pop	ebx
-
 
768
	add	edx,48
749
	add	edx,48
769
	push	edx
-
 
770
	inc	ecx
-
 
771
	cmp	eax,0
-
 
772
	jne	.p3
-
 
773
	cmp	ecx,3
-
 
774
	jbe	.p4
-
 
775
	mov	ecx,4
-
 
776
	dec	ebx
-
 
777
.p4:
-
 
778
	pop	edx
-
 
779
	mov	[ebx],dl
750
	mov	[ebx],dl
780
	inc	ebx
751
	dec	ebx
-
 
752
	test	eax,eax
781
	loop	.p4
753
	jnz	.p3
-
 
754
 
782
	pop	edx ecx eax
755
	pop	edx ecx ebx eax
783
	ret
756
	ret
784
;---------------------------------------------------------------------
757
;---------------------------------------------------------------------
785
align 4
758
align 4
786
fb_get_icon_number:
759
fb_get_icon_number:
787
	push	eax
760
	push	eax
Line 824... Line 797...
824
@@:
797
@@:
825
	mov	esi,ecx
798
	mov	esi,ecx
826
	add	esi,ebp
799
	add	esi,ebp
827
	lodsb
800
	lodsb
828
	cmp	al,byte '='
801
	cmp	al,byte '='
829
	jne	.end
-
 
830
	mov	eax,ecx
802
	mov	eax,ecx
-
 
803
	jne	.search_association
831
	cmp	eax,fb_ini_file_start
804
	cmp	eax,fb_ini_file_start
832
	je	@f
805
	je	@f
833
	dec	eax
806
	dec	eax
834
	cmp	[eax],byte 15
807
	cmp	[eax],byte 15
835
	ja	.end
808
	ja	.end