Subversion Repositories Kolibri OS

Rev

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

Rev 5836 Rev 5848
Line 192... Line 192...
192
    с момента запуска системы; она во многих случаях удобнее,
192
    с момента запуска системы; она во многих случаях удобнее,
193
    поскольку возвращает просто DWORD-значение счетчика времени.
193
    поскольку возвращает просто DWORD-значение счетчика времени.
194
  * Системное время можно установить функцией 22.
194
  * Системное время можно установить функцией 22.
Line 195... Line 195...
195
 
195
 
196
======================================================================
196
======================================================================
197
============== Функция 4 - вывести строку текста в окно. =============
197
================ Функция 4 - нарисовать строку текста. ===============
198
======================================================================
198
======================================================================
199
Параметры:
199
Параметры:
200
  * eax = 4 - номер функции
200
  * eax = 4 - номер функции
201
  * ebx = [координата по оси x]*65536 + [координата по оси y]
201
  * ebx = X*65536+Y, координаты в окне или буфере
202
  * ecx = 0xXYRRGGBB, где
202
  * ecx = 0xXXRRGGBB, где
203
    * RR, GG, BB задают цвет текста
203
    * RR, GG, BB задают цвет текста
204
    * X=ABFF (биты):
204
    * XX=ABFFCSSS (биты):
205
      * A=1 - выводить ASCIIZ-строку
205
      * A=1 - рисуемая строка заканчивается нулём
206
      * B=1 - закрашивать фон цветом edi
206
      * B=1 - закрашивать фон (цвет = edi)
207
      * FF задает шрифт и кодировку:
207
      * FF задает шрифт и кодировку:
208
        0 = 6x9  cp866
208
        0 = 6x9  cp866
209
        2 = 8x16 UTF-16LE
209
        2 = 8x16 UTF-16LE
210
        3 = 8x16 UTF-8
210
        3 = 8x16 UTF-8
211
    * Y=CDDD (биты):
211
      * C=0 - рисовать в окно,
212
      * C=1 перенаправить вывод в область пользователя, задано в edi
212
        С=1 - рисовать в буфер (edi)
213
      * DDD = (множитель размера)-1, то-есть 0 = x1, 7 = x8
213
      * SSS = (множитель размера)-1, то-есть 0 = x1, 7 = x8
214
  * edx = указатель на начало строки
214
  * edx = указатель на начало строки
215
  * esi = для A=0 длина строки, для A=1 игнорируется
215
  * esi = для A=0 длина строки, для A=1 игнорируется
216
  * edi = если B=1, цвет для закраски фона,
216
  * edi = если B=1 - цвет для закраски фона,
Line 217... Line 217...
217
          если C=1, указатель на область пользователя
217
          если C=1 - указатель на буфер
218
 
218
 
219
Возвращаемое значение:
219
Возвращаемое значение:
220
  * функция не возвращает значения
-
 
221
Замечания:
-
 
222
  * C=1, цвет = 32 бита, область пользователя выглядит так:
-
 
223
    Xsize = dword
-
 
224
    Ysize = dword
220
  * функция не возвращает значения
225
    остаток области = Xsize*Ysize*4
221
Замечания:
-
 
222
  * Нельзя одновременно использовать B=1 и C=1,
-
 
223
    поскольку в обоих случаях используется регистр edi.
-
 
224
  * Если SSS=0, шрифт может сглаживаться,
-
 
225
    в зависимости от системной настройки.
-
 
226
  * Структура буфера:
-
 
227
Xsize       dd
Line 226... Line 228...
226
  * Нельзя одновременно использовать B=1 и C=1,
228
Ysize       dd
227
    поскольку в обоих случаях используется регистр edi.
229
picture     rb  Xsize*Ysize*4  ; 32 бита
228
 
230
 
229
======================================================================
231
======================================================================
Line 2130... Line 2132...
2130
    на рамдиске.
2132
    на рамдиске.
2131
  * Пользователь может изменять скин статически, создав свой
2133
  * Пользователь может изменять скин статически, создав свой
2132
    default.skn, или динамически с помощью приложения desktop.
2134
    default.skn, или динамически с помощью приложения desktop.
Line 2133... Line 2135...
2133
 
2135
 
2134
======================================================================
2136
======================================================================
2135
====== Функция 48, подфункция 9 - настройка сглаживания шрифтов. =====
2137
= Функция 48, подфункция 9 - получить настройку сглаживания шрифтов. =
2136
======================================================================
2138
======================================================================
2137
Параметры:
2139
Параметры:
2138
  * eax = 48 - номер функции
2140
  * eax = 48 - номер функции
-
 
2141
  * ebx = 9 - номер подфункции
-
 
2142
Возвращаемое значение:
-
 
2143
  * eax = 2 - субпиксельное, 1 - обычное, 0 - выключить
-
 
2144
 
2139
  * ebx = 9 - номер подфункции
2145
======================================================================
-
 
2146
===== Функция 48, подфункция 10 - настроить сглаживание шрифтов. =====
-
 
2147
======================================================================
-
 
2148
Параметры:
-
 
2149
  * eax = 48 - номер функции
-
 
2150
  * ebx = 10 - номер подфункции
Line 2140... Line 2151...
2140
  * cl=0 - выключить сглаживание, иначе включить сглаживание
2151
  * cl  = 2 - субпиксельное, 1 - обычное, 0 - выключить
2141
 
2152
 
2142
======================================================================
2153
======================================================================
2143
============ Функция 49 - Advanced Power Management (APM). ===========
2154
============ Функция 49 - Advanced Power Management (APM). ===========