Back to main

 

Function 47 - display a number in the window

 

Options:

·         eax = 47 - function number

·         ebx = number to text conversion options:

o   bl = 0 - ecx contains a number

o   bl = 1 - ecx contains a pointer to dword / qword-number

o   bh = 0 - display in decimal notation

o   bh = 1 - display in hexadecimal

o   bh = 2 - display in binary

o   bits 16-21 = how many digits to display

o   bits 22-29 are reserved and must be set to 0

o   bit 30 is set = output qword (64-bit number); it should be bl = 1

o   bit 31 is set = do not output leading zeros

o   ecx = number (with bl = 0) or pointer (with bl = 1)

o   edx = [x-coordinate] * 65536 + [y-coordinate]

o   esi = 0xXXRRGGBB, where

o   RR, GG, BB set the text color

o   XX = 0B0FCSSS (bits):

o   B = 1 - fill the background (color = edi)

·         F sets the font:

o   0 = 6x9; 1 = 8x16;

o   C = 0 - draw in the window,

o   C = 1 - draw to clipboard (edi)

o   SSS = (size multiplier) -1, that is, 0 = x1, 7 = x8

Return value:

  * function does not return value

 

Remarks:

·         The specified length must not exceed 60.

·         Displays exactly the specified number of digits. If the number is small and can be written with a smaller number of digits, it is supplemented with leading zeros; if the number is large and cannot be written in such a number of digits, the “extra” leading digits are truncated.

 

Constants for registers:

  eax - SF_DRAW_NUMBER (47)