Difference between revisions of "SysFn47/ru"
Jump to navigation
Jump to search
Punk Joker (talk | contribs) |
m |
||
Line 1: | Line 1: | ||
− | '''Функция 47 - вывод числа в окно | + | '''Функция 47''' - вывод числа в окно |
---- | ---- | ||
Параметры: | Параметры: | ||
− | * eax = 47 - номер функции | + | :* eax = 47 - номер функции |
− | * ebx = параметры преобразования числа в текст: | + | :* ebx = параметры преобразования числа в текст: |
− | :* bl = 0 - ecx содержит число | + | ::* bl = 0 - ecx содержит число |
− | :* bl = 1 - ecx содержит указатель на dword/qword-число | + | ::* bl = 1 - ecx содержит указатель на dword/qword-число |
− | :* bh = 0 - отображать в десятичной системе счисления | + | ::* bh = 0 - отображать в десятичной системе счисления |
− | :* bh = 1 - отображать в шестнадцатеричной системе | + | ::* bh = 1 - отображать в шестнадцатеричной системе |
− | :* bh = 2 - отображать в двоичной системе | + | ::* bh = 2 - отображать в двоичной системе |
− | :* биты 16-21 = сколько цифр отображать | + | ::* биты 16-21 = сколько цифр отображать |
− | :* биты 22-29 зарезервированы и должны быть установлены в 0 | + | ::* биты 22-29 зарезервированы и должны быть установлены в 0 |
− | :* бит 30 установлен = выводить qword (64-битное число); | + | ::* бит 30 установлен = выводить qword (64-битное число); |
− | ::при этом должно быть bl = 1 | + | :::при этом должно быть bl = 1 |
− | :* бит 31 установлен = не выводить ведущие нули числа | + | ::* бит 31 установлен = не выводить ведущие нули числа |
− | * ecx = число (при bl=0) или указатель (при bl=1) | + | :* ecx = число (при bl=0) или указатель (при bl=1) |
− | * edx = [координата по оси x]*65536 + [координата по оси y] | + | :* edx = [координата по оси x]*65536 + [координата по оси y] |
− | * esi = 0xX0RRGGBB: | + | :* esi = 0xX0RRGGBB: |
− | :* RR, GG, BB задают цвет | + | ::* RR, GG, BB задают цвет |
− | :* X = ABnn (биты) | + | ::* X = ABnn (биты) |
::* nn = шрифт (0/1) | ::* nn = шрифт (0/1) | ||
::* A игнорируется | ::* A игнорируется | ||
::* B=1 - закрашивать фон цветом edi | ::* B=1 - закрашивать фон цветом edi | ||
Возвращаемое значение: | Возвращаемое значение: | ||
− | * функция не возвращает значения | + | :* функция не возвращает значения |
Замечания: | Замечания: | ||
− | * Указанная длина не должна превосходить 60. | + | :* Указанная длина не должна превосходить 60. |
− | * Выводится ровно указанное количество цифр. Если число мало и может быть записано меньшим количеством цифр, оно дополняется ведущими нулями; если число велико и не может быть записано таким количеством цифр, "лишние" ведущие цифры обрезаются. | + | :* Выводится ровно указанное количество цифр. Если число мало и может быть записано меньшим количеством цифр, оно дополняется ведущими нулями; если число велико и не может быть записано таким количеством цифр, "лишние" ведущие цифры обрезаются. |
− | * Параметры шрифтов указаны в описании [[SysFn04/ru|функции 4]]. (вывода текста). | + | :* Параметры шрифтов указаны в описании [[SysFn04/ru|функции 4]]. (вывода текста). |
+ | '''Константы для регистров:''' | ||
+ | ::eax - SF_DRAW_NUMBER (47) | ||
{{System_functions}} | {{System_functions}} | ||
[[Category: SysCalls]] | [[Category: SysCalls]] |
Revision as of 18:24, 17 January 2016
Функция 47 - вывод числа в окно
Параметры:
- eax = 47 - номер функции
- ebx = параметры преобразования числа в текст:
- bl = 0 - ecx содержит число
- bl = 1 - ecx содержит указатель на dword/qword-число
- bh = 0 - отображать в десятичной системе счисления
- bh = 1 - отображать в шестнадцатеричной системе
- bh = 2 - отображать в двоичной системе
- биты 16-21 = сколько цифр отображать
- биты 22-29 зарезервированы и должны быть установлены в 0
- бит 30 установлен = выводить qword (64-битное число);
- при этом должно быть bl = 1
- бит 31 установлен = не выводить ведущие нули числа
- ecx = число (при bl=0) или указатель (при bl=1)
- edx = [координата по оси x]*65536 + [координата по оси y]
- esi = 0xX0RRGGBB:
- RR, GG, BB задают цвет
- X = ABnn (биты)
- nn = шрифт (0/1)
- A игнорируется
- B=1 - закрашивать фон цветом edi
Возвращаемое значение:
- функция не возвращает значения
Замечания:
- Указанная длина не должна превосходить 60.
- Выводится ровно указанное количество цифр. Если число мало и может быть записано меньшим количеством цифр, оно дополняется ведущими нулями; если число велико и не может быть записано таким количеством цифр, "лишние" ведущие цифры обрезаются.
- Параметры шрифтов указаны в описании функции 4. (вывода текста).
Константы для регистров:
- eax - SF_DRAW_NUMBER (47)
|