DOS Fn 6504H: Get Uppercase Table
Expects: AX 6504H
BX Code Page (0ffffH = current code page for console)
CX size of data to return (must be >= 5)
DX Country ID
ES:DI address of buffer to receive the table address
Returns: AX error code if CF is set to CY
ES:DI buffer is filled with 5 bytes of return information
Info: Returns the address of a table of ASCII characters that can be
used in converting international characters into uppercase.
Upon return ES:DI points to a 5-byte structure. The first byte
is a table identifier (04H) and the next 4 bytes are a 32-bit
address in standard address format (offset, then segment).
At that address is up to 130 bytes of data. The first two bytes
describe the length of the table in bytes. The rest of the data
is a series of bytes, each representing the uppercase equivalent
of a character between 80H and ffH.
The main purpose of this table is to map accented or other
oddball characters to their plain ASCII equivalents. Text
translated through this table can be sent, for instance, to
printers which do not support international character sets.
Notes: ■ In some cases, translation tables provided by DOS are
truncated. Programs should always check the length of the
table before starting to translate text.
■ Rather than bit-twiddle, just use fns 6520H, 6521H, and 6522H,
for upshifting characters and strings.
See Also: National Language Support