[Back to DOS SWAG index] [Back to Main SWAG index] [Original]
{ Gets the current country code number.
Part of the Heartware Toolkit v2.00 (HTelse.PAS) for Turbo Pascal.
Author: Jose Almeida. P.O.Box 4185. 1504 Lisboa Codex. Portugal.
I can also be reached at RIME network, site ->TIB or #5314.
Feel completely free to use this source code in any way you want, and, if
you do, please don't forget to mention my name, and, give me and Swag the
proper credits. }
PROCEDURE Get_Country_Code(var CC : word;
var Error_Code : byte);
{ DESCRIPTION:
Gets the current country code number.
SAMPLE CALL:
Get_Country_Code(CC,Error_Code);
RETURNS:
CC : country code number
or $FFFF if Error_Code <> 0
Error_Code : see The Programmers PC Source Book 3.191
NOTES:
None. }
var
TmpA : array[1..34] of byte;
HTregs : registers;
BEGIN { Get_Country_Code }
FillChar(TmpA,SizeOf(TmpA),0);
HTregs.AX := $3800;
HTregs.DX := Ofs(TmpA);
HTregs.DS := Seg(TmpA);
MsDos(HTregs);
if HTregs.Flags and FCarry <> 0 then
begin
CC := $FFFF; { on error set to $FFFF }
Error_Code := HTregs.AL;
end
else
begin
CC := HTregs.BX;
Error_Code := 0;
end;
END; { Get_Country_Code }
FUNCTION Get_Country_Code_Text(CC : word) : String25;
{ DESCRIPTION:
Gets country code in string format.
SAMPLE CALL:
St := Get_Country_Code_Text(CC);
RETURNS:
Country code name.
NOTES:
None. }
BEGIN { Get_Country_Code_Text }
case CC of
001 : Get_Country_Code_Text := 'United States';
002 : Get_Country_Code_Text := 'Canada (French)';
003 : Get_Country_Code_Text := 'Latin America';
031 : Get_Country_Code_Text := 'Netherlands';
032 : Get_Country_Code_Text := 'Belgium';
033 : Get_Country_Code_Text := 'France';
034 : Get_Country_Code_Text := 'Spain';
036 : Get_Country_Code_Text := 'Hungary';
038 : Get_Country_Code_Text := 'Yugoslavia';
039 : Get_Country_Code_Text := 'Italy';
041 : Get_Country_Code_Text := 'Switzerland';
042 : Get_Country_Code_Text := 'Czechoslovakia';
044 : Get_Country_Code_Text := 'United Kingdom';
045 : Get_Country_Code_Text := 'Denmark';
046 : Get_Country_Code_Text := 'Sweden';
047 : Get_Country_Code_Text := 'Norway';
048 : Get_Country_Code_Text := 'Poland';
049 : Get_Country_Code_Text := 'Germany';
055 : Get_Country_Code_Text := 'Brazil';
061 : Get_Country_Code_Text := 'International English';
081 : Get_Country_Code_Text := 'Japan';
082 : Get_Country_Code_Text := 'Korea';
086 : Get_Country_Code_Text := 'Peoples Republic of China';
088 : Get_Country_Code_Text := 'Taiwan';
351 : Get_Country_Code_Text := 'Portugal';
358 : Get_Country_Code_Text := 'Finland';
785 : Get_Country_Code_Text := 'Middle East (Arabic)';
972 : Get_Country_Code_Text := 'Israel (Hebrew)';
else
Get_Country_Code_Text := 'Unknown';
end;
END; { Get_Country_Code_Text }
[Back to DOS SWAG index] [Back to Main SWAG index] [Original]