Subversion Repositories Kolibri OS

Rev

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

Rev 9682 Rev 9690
Line 515... Line 515...
515
	add	ebx,6
515
	add	ebx,6
516
	call	fb_decimal_string_4
516
	call	fb_decimal_string_4
517
	mov	[ebx],dl
517
	mov	[ebx],dl
518
	jmp	.size_convert_end
518
	jmp	.size_convert_end
519
;-----------------------------------------
519
;-----------------------------------------
-
 
520
.qword_div:
-
 
521
	mov	eax,[edx-40+32]
-
 
522
	mov	ebx,[edx-40+32+4]
-
 
523
@@:	; /1024
-
 
524
	shrd	eax,ebx,5 ; /32
-
 
525
	shr	ebx,5 ; /32
-
 
526
	shrd	eax,ebx,5 ; /32
-
 
527
	shr	ebx,5 ; /32
-
 
528
	dec	ecx
-
 
529
	jnz	@b
-
 
530
; /(1024*1024)
-
 
531
	shr	eax,20
-
 
532
	test	eax,eax
-
 
533
	ret
-
 
534
;-----------------------------------------
520
align 4
535
align 4
521
.copy_size:
536
.copy_size:
522
;/0x1000000000000000 - EB
537
;/0x1000000000000000 - EB
523
;/0x4000000000000 - PB
538
;/0x4000000000000 - PB
524
;/0x10000000000 - TB
539
;/0x10000000000 - TB
Line 526... Line 541...
526
;/0x100000 - MB
541
;/0x100000 - MB
527
;/0x400 - KB
542
;/0x400 - KB
528
	mov	[eax+6],dword '    '
543
	mov	[eax+6],dword '    '
529
	mov	[eax+6+4],word '  '
544
	mov	[eax+6+4],word '  '
530
	push	ebx edx
545
	push	ebx edx
531
	mov	eax,[edx-40+32]
-
 
532
	mov	ebx,[edx-40+32+4]
-
 
533
; /1024
-
 
534
    shrd eax,ebx,5 ; /32
-
 
535
	shr ebx,5 ; /32
-
 
536
    shrd eax,ebx,5 ; /32
-
 
537
	shr ebx,5 ; /32
546
	push	ecx
538
; /1024
-
 
539
    shrd eax,ebx,5 ; /32
-
 
540
	shr ebx,5 ; /32
-
 
541
    shrd eax,ebx,5 ; /32
-
 
542
	shr ebx,5 ; /32
-
 
543
; /1024
-
 
544
    shrd eax,ebx,5 ; /32
-
 
545
	shr ebx,5 ; /32
547
	mov	ecx,4
546
    shrd eax,ebx,5 ; /32
-
 
547
	shr ebx,5 ; /32
548
	call	.qword_div
548
; /1024
-
 
549
    shrd eax,ebx,5 ; /32
-
 
550
	shr ebx,5 ; /32
-
 
551
    shrd eax,ebx,5 ; /32
-
 
552
	shr ebx,5 ; /32
-
 
553
; /(1024*1024)
-
 
554
	shr	eax,20
549
	pop	ecx
555
	test	eax,eax
-
 
556
	jz	@f
550
	jz	@f
557
	mov	dl,byte 'E' ; Exa Byte
551
	mov	dl,byte 'E' ; Exa Byte
558
	jmp	.call_decimal_string
552
	jmp	.call_decimal_string
559
@@:
553
@@:
560
	mov	eax,[edx-40+32]
-
 
561
	mov	ebx,[edx-40+32+4]
-
 
562
; /1024
-
 
563
    shrd eax,ebx,5 ; /32
-
 
564
	shr ebx,5 ; /32
-
 
565
    shrd eax,ebx,5 ; /32
-
 
566
	shr ebx,5 ; /32
554
	push	ecx
567
; /1024
-
 
568
    shrd eax,ebx,5 ; /32
-
 
569
	shr ebx,5 ; /32
-
 
570
    shrd eax,ebx,5 ; /32
-
 
571
	shr ebx,5 ; /32
555
	mov	ecx,3
572
; /1024
-
 
573
    shrd eax,ebx,5 ; /32
-
 
574
	shr ebx,5 ; /32
-
 
575
    shrd eax,ebx,5 ; /32
-
 
576
	shr ebx,5 ; /32
556
	call	.qword_div
577
; /(1024*1024)
-
 
578
	shr	eax,20
557
	pop	ecx
579
	test	eax,eax
-
 
580
	jz	@f
558
	jz	@f
581
	mov	dl,byte 'P' ; Peta Byte
559
	mov	dl,byte 'P' ; Peta Byte
582
	jmp	.call_decimal_string
560
	jmp	.call_decimal_string
583
@@:
561
@@:
584
	mov	eax,[edx-40+32]
-
 
585
	mov	ebx,[edx-40+32+4]
-
 
586
; /1024
-
 
587
    shrd eax,ebx,5 ; /32
-
 
588
	shr ebx,5 ; /32
562
	push	ecx
589
    shrd eax,ebx,5 ; /32
-
 
590
	shr ebx,5 ; /32
563
	mov	ecx,2
591
; /1024
-
 
592
    shrd eax,ebx,5 ; /32
-
 
593
	shr ebx,5 ; /32
564
	call	.qword_div
594
    shrd eax,ebx,5 ; /32
-
 
595
	shr ebx,5 ; /32
-
 
596
; /(1024*1024)
-
 
597
	shr	eax,20
565
	pop	ecx
598
	test	eax,eax
-
 
599
	jz	@f
566
	jz	@f
600
	mov	dl,byte 'T' ; Tera Byte
567
	mov	dl,byte 'T' ; Tera Byte
601
	jmp	.call_decimal_string
568
	jmp	.call_decimal_string
602
@@:
569
@@:
603
	mov	eax,[edx-40+32]
-
 
604
	mov	ebx,[edx-40+32+4]
-
 
605
; /1024
570
	push	ecx
606
    shrd eax,ebx,5 ; /32
-
 
607
	shr ebx,5 ; /32
571
	mov	ecx,1
608
    shrd eax,ebx,5 ; /32
-
 
609
	shr ebx,5 ; /32
572
	call	.qword_div
610
; /(1024*1024)
-
 
611
	shr	eax,20
573
	pop	ecx
612
	test	eax,eax
-
 
613
	jz	@f
574
	jz	@f
614
	mov	dl,byte 'G' ; Giga Byte
575
	mov	dl,byte 'G' ; Giga Byte
615
	jmp	.call_decimal_string
576
	jmp	.call_decimal_string
616
@@:
577
@@:
617
	mov	eax,[edx-40+32]
578
	mov	eax,[edx-40+32]