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 |