INT 21 - DOS 3.3 - GET EXTENDED COUNTRY INFORMATION              

Input

DOS1 N DOS2 N

DOS3.3

Y DOS5 Y

Output

AX

65h  Info ID Error Code AX

BX

 Code Page (FFFFh = Global)     BX

CX

 Amount of Data to Return (>=5)     CX

DX

 Country ID (FFFFh = Default)     DX

ES:DI

 Pointer to Return Buffer Set if Error CF
Info ID:        01h = Get Extended Country Information
                02h = Get Extended Country Upper Case Table
                04h = Get Extended Country File Name Upper Case Table
                05h = Get Extended File Name Character Table
                06h = Get Extended Country Collating Table
                07h = Get DBCS Lead Byte Table

Returned Buffer:

    01h Extended Country Information
        00h     BYTE    Info ID = 01h
        01h     WORD    Size (<= 38)
        03h     WORD    Country ID
        05h     WORD    Code Page
        07h     WORD    Date and Time Format: 0 = USA    m d y, hh:mm:ss
                                              1 = Europe d m y, hh:mm:ss
                                              2 = Japan  y m d, hh:mm:ss
        09h   5 BYTEs   Currency Symbol String (ASCIIZ)
        0Eh     BYTE    Thousands Separator

        0Fh     BYTE    Zero
        10h     BYTE    Decimal Separator
        11h     BYTE    Zero
        12h     BYTE    Date Separator
        13h     BYTE    Zero
        14h     BYTE    Time Separator
        15h     BYTE    Zero
        16h     BYTE    Currency Format: 00h = Leading symbol, no space
                                         01h = Following symbol, no space
                                         02h = Leading symbol, 1 space
                                         03h = Following symbol, 1 space
                                         04h = Symbol replaces decimal
        17h     BYTE    Number of Digits after decimal
        18h     BYTE    Time Format: 0 = 12 Hour clock
                                     1 = 24 Hour clock
        19h     DWORD   Case map call address
        1Dh     BYTE    Data list separator
        1Eh     BYTE    Zero
        1Fh  10 BYTEs   Reserved

    02h Extended Country Uppercase Table

        00h     BYTE    Info ID = 02h
        01h     DWORD   Pointer to upper case table. Table is 130 bytes:
                        2 byte length, plus 128 upper case values

    04h Extended Country File Name Uppercase Table

        00h     BYTE    Info ID = 04h
        01h     DWORD   Pointer to file name uppercase table. Table is 130
                        bytes: 2 byte length, plus 128 upper case values.

    05h Extended File Name Character Table

        00h     BYTE    Info ID = 05h
        01h     DWORD   Pointer to file name character table. Table starts
                        with a 16 bit length, followed by characters that
                        must not be used in file names for the specified
                        country.

    06h Extended Country Collating Table

        00h     BYTE    Info ID = 06h
        01h     DWORD   Pointer to collating table. Table is 250 bytes:
                        2 byte length, plus 256 values in collating order.

    07 DBCS Lead Byte Table (DOS V4.xx Only)

        00h     WORD    Number of bytes that follow
        02h   2 BYTEs   Start & End of first lead byte range
        04h   2 BYTEs   Start & End of second lead byte range
              2 BYTEs   (repeat as necessary)
              2 BYTEs   0, 0 marks end of table, not included in count


Copyright © 1985 to 2022 Beta Systems                            Last modified: Wednesday, January 05, 2022 .