Documentation

git-svn-id: svn://kolibrios.org@5848 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
pathoswithin 2015-10-15 15:20:20 +00:00
parent fbdb5951a3
commit 39bb2b615a
2 changed files with 53 additions and 32 deletions

View File

@ -194,37 +194,39 @@
* Системное время можно установить функцией 22.
======================================================================
============== Функция 4 - вывести строку текста в окно. =============
================ Функция 4 - нарисовать строку текста. ===============
======================================================================
Параметры:
* eax = 4 - номер функции
* ebx = [координата по оси x]*65536 + [координата по оси y]
* ecx = 0xXYRRGGBB, где
* ebx = X*65536+Y, координаты в окне или буфере
* ecx = 0xXXRRGGBB, где
* RR, GG, BB задают цвет текста
* X=ABFF (биты):
* A=1 - выводить ASCIIZ-строку
* B=1 - закрашивать фон цветом edi
* XX=ABFFCSSS (биты):
* A=1 - рисуемая строка заканчивается нулём
* B=1 - закрашивать фон (цвет = edi)
* FF задает шрифт и кодировку:
0 = 6x9 cp866
2 = 8x16 UTF-16LE
3 = 8x16 UTF-8
* Y=CDDD (биты):
* C=1 перенаправить вывод в область пользователя, задано в edi
* DDD = (множитель размера)-1, то-есть 0 = x1, 7 = x8
* C=0 - рисовать в окно,
С=1 - рисовать в буфер (edi)
* SSS = (множитель размера)-1, то-есть 0 = x1, 7 = x8
* edx = указатель на начало строки
* esi = для A=0 длина строки, для A=1 игнорируется
* edi = если B=1, цвет для закраски фона,
если C=1, указатель на область пользователя
* edi = если B=1 - цвет для закраски фона,
если C=1 - указатель на буфер
Возвращаемое значение:
* функция не возвращает значения
Замечания:
* C=1, цвет = 32 бита, область пользователя выглядит так:
Xsize = dword
Ysize = dword
остаток области = Xsize*Ysize*4
* Нельзя одновременно использовать B=1 и C=1,
поскольку в обоих случаях используется регистр edi.
* Если SSS=0, шрифт может сглаживаться,
в зависимости от системной настройки.
* Структура буфера:
Xsize dd
Ysize dd
picture rb Xsize*Ysize*4 ; 32 бита
======================================================================
========================= Функция 5 - пауза. =========================
@ -2132,12 +2134,21 @@ dword-значение цвета 0x00RRGGBB
default.skn, или динамически с помощью приложения desktop.
======================================================================
====== Функция 48, подфункция 9 - настройка сглаживания шрифтов. =====
= Функция 48, подфункция 9 - получить настройку сглаживания шрифтов. =
======================================================================
Параметры:
* eax = 48 - номер функции
* ebx = 9 - номер подфункции
* cl=0 - выключить сглаживание, иначе включить сглаживание
Возвращаемое значение:
* eax = 2 - субпиксельное, 1 - обычное, 0 - выключить
======================================================================
===== Функция 48, подфункция 10 - настроить сглаживание шрифтов. =====
======================================================================
Параметры:
* eax = 48 - номер функции
* ebx = 10 - номер подфункции
* cl = 2 - субпиксельное, 1 - обычное, 0 - выключить
======================================================================
============ Функция 49 - Advanced Power Management (APM). ===========

View File

@ -192,36 +192,37 @@ Remarks:
* System time can be set by function 22.
======================================================================
============ Function 4 - draw text string in the window. ============
=================== Function 4 - draw text string. ===================
======================================================================
Parameters:
* eax = 4 - function number
* ebx = [coordinate on axis x]*65536 + [coordinate on axis y]
* ecx = 0xXYRRGGBB, where
* ebx = X*65536+Y, coordinates in the window or buffer
* ecx = 0xXXRRGGBB, where
* RR, GG, BB specify text color
* X = ABFF (bits):
* XX = ABFFCSSS (bits):
* A=1 - output zero terminated string
* B=1 - fill background with the color edi
* B=1 - fill background (color = edi)
* FF specifies the font and encoding:
0 = 6x9 cp866
2 = 8x16 UTF-16LE
3 = 8x16 UTF-8
* Y = CDDD (bits):
* C=1 redirect the output to the user area, specified in edi
* DDD = (size multiplier)-1, so 0 = x1, 7 = x8
* C=0 - draw to the window,
C=1 - draw to the user buffer (edi)
* SSS = (size multiplier)-1, so 0 = x1, 7 = x8
* edx = pointer to the beginning of the string
* esi = for A=0 length of the string, for A=1 is ignored
* edi = for B=1 color to fill background,
for C=1 pointer to user area for redirect
for C=1 pointer to user buffer
Returned value:
* function does not return value
Remarks:
* C=1, pixel depth = 32 bits, user area is as follows:
Xsize = dword
Ysize = dword
rest of the area = Xsize*Ysize*4
* You can not use B=1 and C=1 at the same time, since both use edi.
* When SSS=0, font may be smoothed, depending on system setting.
* User buffer structure:
Xsize dd
Ysize dd
picture rb Xsize*Ysize*4 ; 32 bpp
======================================================================
========================= Function 5 - delay. ========================
@ -2115,12 +2116,21 @@ Remarks:
'default.skn' or dynamically with the application 'desktop'.
======================================================================
======== Function 48, subfunction 9 - font smoothing setting. ========
====== Function 48, subfunction 9 - get font smoothing setting. ======
======================================================================
Parameters:
* eax = 48 - function number
* ebx = 9 - subfunction number
* cl=0 - turn off font smoothing, else - turn on
Returned value:
* eax = 2 - subpixel, 1 - anti-aliasing, 0 - off
======================================================================
========== Function 48, subfunction 10 - set font smoothing. =========
======================================================================
Parameters:
* eax = 48 - function number
* ebx = 10 - subfunction number
* cl = 2 - subpixel, 1 - anti-aliasing, 0 - off
======================================================================
=========== Function 49 - Advanced Power Management (APM). ===========