PUSH_SPRINTF

PUSH_SPRINTF MsgIdentifier, Param1, Param2, ..., ParamX

Processes the given message and parameters to create a new string. Parameter placeholders in the original message are replaced in the new string with the corresponding parameter values. This macro places the new string on the stack.

The return value is the address of the new string in the EAX register.

MsgIdentifier
Message identifier of the message to process.
Parm1, Parm2, through ParmX
Parameter values. The number of parameters depends on the highest parameter number given in the parameter placeholders in the original message.

A parameter placeholder consists of a percent sign (%), a parameter number, and a format character.

A parameter number can be any integer value in the range zero to 9. This number identifies which parameter passed to the PUSH_SPRINTF macro replaces the given placeholder. This means the order in which parameter values are inserted is not determined order in which they are passed to the macro. Instead, the parameter number in the parameter placeholders determine where a given parameter is inserted and how often it is inserted.

The format character specifies the format of the parameter to be displayed. It can be one of these letters:

s Null terminated string.
u 16-bit unsigned decimal integer in the range zero to 999.
x 16-bit unsigned hexadecimal integer.

The parameter type must match the formatting specified by the corresponding parameter placeholder.