From 34587a647f791f29c0ac26fec13059e516507c40 Mon Sep 17 00:00:00 2001
From: Nikolay Nikolov <nickysn@gmail.com>
Date: Wed, 13 Oct 2021 06:39:42 +0300
Subject: [PATCH] + init the ansistring upper and lower case tables in the WASI
 SysUtils unit initialization

---
 rtl/wasi/sysutils.pp | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/rtl/wasi/sysutils.pp b/rtl/wasi/sysutils.pp
index 7d1c3d3a5a..9643b6a312 100644
--- a/rtl/wasi/sysutils.pp
+++ b/rtl/wasi/sysutils.pp
@@ -698,7 +698,25 @@ end;
 
 
 procedure InitAnsi;
+Var
+  i : longint;
 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;