| |
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 |