;InfoID db ? ; One byte precedes ExtCountryInfo struc ExtCountryInfo ; Int 21h/AX=6501h (DOS 3.3+) eciLength dw ? ; Byte size of structure - 2 eciCountryCode dw ? ; Country Code eciCodePageID dw ? ; Code page identifier ; Following = CountryInfo (Int 21h/AH=38h, DOS 2.11+, 34d bytes) eciDateFormat dw ? ; Date format eciCurrency db 5 dup (?) ; Currency symbol (ASCIIZ) eciThousands db 2 dup (?) ; Thousands separator (ASCIIZ) eciDecimal db 2 dup (?) ; Decimal separator (ASCIIZ) eciDateSep db 2 dup (?) ; Date separator (ASCIIZ) eciTimeSep db 2 dup (?) ; Time separator (ASCIIZ) eciBitField db ? ; Currency format eciCurrencyPlaces db ? ; Places after decimal point eciTimeFormat db ? ; 12-hour or 24-hour format eciCaseMap dd ? ; Addr of case-mapping routine eciDataSep db 2 dup (?) ; Data list separator (ASCIIZ) eciReserved db 10 dup (?) ; Reserved ends ; = 40d bytes ; eciDateFormat date_usa = 0000h ; Month/day/year date_europe = 0001h ; Day/month/year date_japan = 0002h ; Year/month/day ; eciTimeFormat time_12hour = 0 time_24hour = 1 ; eciBitField ; (bits 2-7 undefined) currency_follows_amount = 0001b ; bit 0=0: precedes amount currency_space_amount = 0010b ; bit 1=0: no space between