Browse Source

+ init the ansistring upper and lower case tables in the WASI SysUtils unit initialization

Nikolay Nikolov 3 years ago
parent
commit
34587a647f
1 changed files with 18 additions and 0 deletions
  1. 18 0
      rtl/wasi/sysutils.pp

+ 18 - 0
rtl/wasi/sysutils.pp

@@ -698,7 +698,25 @@ end;
 
 
 
 
 procedure InitAnsi;
 procedure InitAnsi;
+Var
+  i : longint;
 begin
 begin
+  {  Fill table entries 0 to 127  }
+  for i := 0 to 96 do
+    UpperCaseTable[i] := chr(i);
+  for i := 97 to 122 do
+    UpperCaseTable[i] := chr(i - 32);
+  for i := 123 to 191 do
+    UpperCaseTable[i] := chr(i);
+  Move (CPISO88591UCT,UpperCaseTable[192],SizeOf(CPISO88591UCT));
+
+  for i := 0 to 64 do
+    LowerCaseTable[i] := chr(i);
+  for i := 65 to 90 do
+    LowerCaseTable[i] := chr(i + 32);
+  for i := 91 to 191 do
+    LowerCaseTable[i] := chr(i);
+  Move (CPISO88591LCT,LowerCaseTable[192],SizeOf(CPISO88591UCT));
 end;
 end;