Subversion Repositories Kolibri OS

Rev

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

Rev 171 Rev 247
Line 597... Line 597...
597
        ret
597
        ret
598
@@:
598
@@:
599
        cmp     byte [edi+11], 0xF
599
        cmp     byte [edi+11], 0xF
600
        jz      .longname
600
        jz      .longname
601
        push    ecx
601
        push    ecx
602
        mov     ecx, 8
-
 
603
        push    edi ebp ecx
602
        push    edi ebp
604
        test    byte [ebp-4], 1
603
        test    byte [ebp-4], 1
605
        jnz     .unicode_short
604
        jnz     .unicode_short
-
 
605
 
-
 
606
        mov     eax, [edi]
-
 
607
        mov     ecx, [edi+4]
-
 
608
        mov     [ebp], eax
-
 
609
        mov     [ebp+4], ecx
-
 
610
 
-
 
611
        mov     ecx, 8
606
@@:
612
@@:
607
        mov     al, [edi]
-
 
608
        inc     edi
-
 
609
        mov     [ebp], al
613
        cmp     byte [ebp+ecx-1], ' '
610
        inc     ebp
-
 
611
        loop    @b
614
        loope    @b
-
 
615
 
612
        pop     ecx
616
        mov     eax, [edi+8]
613
@@:
-
 
614
        cmp     byte [ebp-1], ' '
617
        cmp     al, ' '
615
        jnz     @f
618
        je      .done
616
        dec     ebp
619
        shl     eax, 8
617
        loop    @b
620
        mov     al, '.'
618
@@:
621
 
619
        mov     byte [ebp], '.'
622
        lea ebp, [ebp+ecx+1]
620
        inc     ebp
623
        mov     [ebp], eax
621
        mov     ecx, 3
624
        mov     ecx, 3
622
        push    ecx
-
 
623
@@:
-
 
624
        mov     al, [edi]
-
 
625
        inc     edi
-
 
626
        mov     [ebp], al
-
 
627
        inc     ebp
-
 
628
        loop    @b
-
 
629
        pop     ecx
-
 
630
@@:
625
@@:
631
        cmp     byte [ebp-1], ' '
626
        rol eax, 8
632
        jnz     @f
627
        cmp al, ' '
633
        dec     ebp
628
        jne .done
634
        loop    @b
629
        loop   @b
635
        dec     ebp
630
        dec ebp
636
@@:
631
.done:
637
        and     byte [ebp], 0	; CF=0
632
        and     byte [ebp+ecx+1], 0   ; CF=0
638
        pop     ebp edi ecx
633
        pop     ebp edi ecx
639
        ret
634
        ret
640
.unicode_short:
635
.unicode_short:
-
 
636
        mov     ecx, 8
-
 
637
        push    ecx
641
@@:
638
@@:
642
        mov     al, [edi]
639
        mov     al, [edi]
643
        inc     edi
640
        inc     edi
644
        call    ansi2uni_char
641
        call    ansi2uni_char
645
        mov     [ebp], ax
642
        mov     [ebp], ax