Subversion Repositories Kolibri OS

Rev

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

Rev 6036 Rev 6462
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 6036 $
8
$Revision: 6462 $
9
 
9
 
10
dtext:
10
dtext:
11
; edx -> string
11
; edx -> string
Line 139... Line 139...
139
        jmp     .drawUTF16
139
        jmp     .drawUTF16
Line 140... Line 140...
140
 
140
 
141
.drawUTF8:
141
.drawUTF8:
142
        dec     dword [esp]
142
        dec     dword [esp]
143
        js      .done
-
 
144
@@:
143
        js      .done
145
        movzx   ebx, byte [esi]
144
        mov     ecx, 256
-
 
145
        xor     eax, eax
146
        inc     esi
146
        call    utf8to16
147
        test    bl, bl
147
        test    ax, ax
148
        jz      .done
-
 
149
        jns     .valid
-
 
150
        shl     bx, 10
-
 
151
        jnc     @b
-
 
152
        mov     bl, [esi]
-
 
153
        test    bl, bl
-
 
154
        jns     @b
-
 
155
        shl     bl, 2
-
 
156
        jc      @b
-
 
157
        shr     bh, 2
-
 
158
        shr     bx, 2
-
 
159
        inc     esi
148
        jz      .done
160
        cmp     bx, 1419
-
 
161
        jc      .valid
-
 
162
        shl     bh, 4
149
        cmp     eax, 1419
163
        jns     @f
-
 
164
.tail:
150
        jc      @f
165
        mov     bl, [esi]
-
 
166
        shl     bl, 1
-
 
167
        jnc     @b
-
 
168
        js      @b
-
 
169
        inc     esi
-
 
170
        shl     bh, 1
-
 
171
        js      .tail
151
        xor     eax, eax
172
@@:
152
@@:
173
        xor     ebx, ebx
153
        shl     eax, 4
174
.valid:
154
        lea     ebx, [eax+fontUni]
175
        pushd   esi edi 16
-
 
176
        shl     ebx, 4
-
 
177
        add     ebx, fontUni
155
        pushd   esi edi 16
178
        mov     esi, [esp+12+fontMultiplier]
156
        mov     esi, [esp+12+fontMultiplier]
179
        call    drawChar
157
        call    drawChar
180
        imul    esi, 8*4
158
        imul    esi, 8*4
181
        pop     edi
159
        pop     edi