Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Int 21h Function 38h
 Detail                                    Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
  Interrupt:   21h     Function:   38h
 
  Title:       Get or Set Country Information
 
  See also:    Get Extended Country Information
 
  Description:
 
     Obtains internationalization information for the current country.
     [Version 3.0+] Obtains internationalization information for the
     current or specified country, or sets the current country code.
 
     Input                                Output
 
     If getting internationalization      If function successful
     information                            Carry flag: clear
       AH = 38h                           And if getting
       AL = 0 to get "current"            internationalization information
            country information             BX = Country code
       DS:DX = segment:offset of            DS:DX = segment:offset of
               buffer for returned             buffer holding
               information                     internationalization
               [Version 3.0+]                  information filled in
       AH = 38h                                as follows:
       AL = 0  to get "current"
            country information                [PC-DOS versions 2.0 and 2.1]
          = 1-FEh to get information
            for countries with                 Bytes     Contents
            code < 255
          = FFh to get information             00h-01h   Date format
            for countries with                           0 = USA m d y
            code >= 255                                  1 = Europe d m y
       BX = Country code if AL = FFh                     2 = Japan y m d
       DS:DX = segment:offset of buffer        02h-03h   ASCIIZ currency
               for returned information                  symbol
                                               04h-05h   ASCIIZ thousands
     If setting current country code                     separator
     [Version 3.0+]                            06h-07h   ASCIIZ decimal
       AH = 38h                                          separator
       AL = 1-0FEh country code for            08h-1Fh   Reserved
            countries with code < 255
          = 0FFh for countries with            [MS-DOS version 2.0+,
            code >= 255                        PC-DOS version 3.0+]
       BX = Country code if AL = 0FFh
       DX = FFFFh                              Bytes    Contents
 
                                               00h-01h   Date format
                                                         0 = USA m d y
                                                         1 = Europe d m y
                                                         2 = Japan y m d
                                               02h-06h   ASCIIZ currency
                                                         symbol string
                                               07h-08h   ASCIIZ thousands
                                                         separator
                                                         character
                                               09h-0Ah   ASCIIZ decimal
                                                         separator
                                                         character
                                               0Bh-0Ch   ASCIIZ date
                                                         separator
                                                         character
                                               0Dh-0Eh   ASCIIZ time
                                                         separator
                                                         character
                                               0Fh       Currency format
                                                         Bit 0 = 0 (if
                                                         currency symbol
                                                         precedes value)
                                                         Bit 0 = 1 (if
                                                         currency symbol
                                                         follows value)
                                                         Bit 1 = 0 (if no
                                                         space between
                                                         value and
                                                         currency symbol)
                                                         Bit 1 = 1 (if
                                                         one space
                                                         between value
                                                         and currency
                                                         symbol)
                                                         Bit 2 = 0 (if
                                                         currency symbol
                                                         and decimal are
                                                         separate)
                                                         Bit 2 = 1 (if
                                                         currency symbol
                                                         replaces
                                                         decimal
                                                         separator)
                                               10h       Number of digits
                                                         after decimal in
                                                         currency
                                               11h       Time format
                                                         Bit 0 = 0 (if
                                                         12-hour clock)
                                                         Bit 0 = 1 (if
                                                         24-hour clock)
                                               12h-15h   Case-map call
                                                         address
                                               16h-17h   ASCIIZ data-list
                                                         separator
                                               18h-21h   Reserved
 
                                          If function unsuccessful
                                            Carry flag: set
                                            AX = Error code (02h)
                                            See: Error codes
                                    -♦-