initial commit
[rofl0r-KOL.git] / UDig.pas
blob9738e7b543ebb0f4514289cb8e81a0ebe9f3507d
1 unit UDig;
3 interface
5 function stri (n,n1:integer;zero,trim:boolean):string;
6 function strL (n: longint; n1 :integer):string;
8 {function strr(n:real;n1,n2:word):string;
9 function strH (w : longint; c : word) : string;}
10 function strhl(w : longint; c : word) : string;
11 function hexi(s:string):word;
12 function hexl(s:string):longint;
13 function inti(s:string):word;
14 {function intl(s:string):longint; }
16 implementation
18 uses UWrd, UStr;
20 function atrim(s : string) : string;
21 var t : string;
22 begin
23 t := s;
24 while (t[1] = ' ') and (length(t) > 0) do t := copy(t, 2, 255);
25 while (t[length(t)] = ' ') and (length(t) > 0) do t := copy(t, 1, length(t) - 1);
26 atrim := t;
27 end;
30 function strh;
31 const a:array[0..15] of cHar =
32 ('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
33 var r:string;
34 begin
35 if c>0 then r:=strh(w div 16,c-1)+a[w mod 16]
36 else r:='';
37 strH := r;
38 end;
40 function strhl;
41 const a:array[0..15] of cHar =
42 ('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
43 var r:string;
44 begin
45 if c > 0 then
46 if w mod 16 >= 0 tHen r := strhl(w sHr 4, c - 1) + a[ w mod 16] else
47 r := strHl(w sHr 4, c - 1) + a[16 + w mod 16]
48 else r := '';
49 strHl := r;
50 end;
52 function hexi;
53 const a : string[15] ='123456789ABCDEF';
54 var i : integer;
55 h :word;
56 begin
57 h:=0;
58 for i:=1 to length(s) do begin
59 if S[i]<>' ' then begin
60 h:=h shl 4;
61 h:=h+pos(UpCase(S[i]),a);
62 end;
63 end;
64 hexi:=h;
65 end;
67 function hexl;
68 const a : string[15] ='123456789ABCDEF';
69 var i : integer;
70 h :longint;
71 begin
72 h:=0;
73 for i:=1 to length(s) do begin
74 if S[i]<>' ' then begin
75 h:=h shl 4;
76 h:=h+pos(UpCase(S[i]),a);
77 end;
78 end;
79 hexl:=h;
80 end;
82 function inti;
83 var
84 rc : integer;
85 ww : longint;
86 begin
87 val(s, ww, rc);
88 inti := ww;
89 end;
91 function intl;
92 var
93 rc : integer;
94 ww : integer;
95 begin
96 val(s, ww, rc);
97 intl := ww;
98 end;
101 function stri;
102 var s : string;
103 i : integer;
104 begin
105 str(n: n1, s);
106 if zero THen begin
107 for i := 1 to lengtH(s) do
108 if s[i] = ' ' THen s[i] := '0';
109 end;
110 if trim then s := atrim(s);
111 stri := s;
112 end;
114 function strl;
115 var s:string;
116 begin
117 str(n:n1,s);
118 strl:=s;
119 end;
122 function strr;
123 var s:string;
124 begin
125 str(n:n1:n2,s);
126 strr:=s;
127 end;
130 end.