diff --git a/Asuro.iso b/Asuro.iso index 304238fa..3e9f077e 100644 Binary files a/Asuro.iso and b/Asuro.iso differ diff --git a/bin/kernel.bin b/bin/kernel.bin index 196b8a04..2e745194 100755 Binary files a/bin/kernel.bin and b/bin/kernel.bin differ diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin index 196b8a04..2e745194 100755 Binary files a/iso/boot/asuro.bin and b/iso/boot/asuro.bin differ diff --git a/lib/kernel.ppu b/lib/kernel.ppu index 3c486cdd..c6c993dc 100644 Binary files a/lib/kernel.ppu and b/lib/kernel.ppu differ diff --git a/lib/libpconsole.a b/lib/libpconsole.a index 0e92bddc..6a783a22 100644 Binary files a/lib/libpconsole.a and b/lib/libpconsole.a differ diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index e2e611f6..e91c4935 100644 Binary files a/lib/libpmultiboot.a and b/lib/libpmultiboot.a differ diff --git a/lib/libpsystem.a b/lib/libpsystem.a index edf39f09..f592e0ac 100644 Binary files a/lib/libpsystem.a and b/lib/libpsystem.a differ diff --git a/src/strings.pas b/src/strings.pas index 4610a60d..303f4e3b 100644 --- a/src/strings.pas +++ b/src/strings.pas @@ -18,13 +18,29 @@ function stringContains(str : pchar; sub : pchar) : boolean; implementation function stringToUpper(str : pchar) : pchar; +var + result : pchar; + i : uint32; + begin - + result:= stringCopy(str); + for i:=0 to stringSize(result) do begin + if (byte(result[i]) >= 97) and (byte(result[i]) <= 122) then result[i]:= char(byte(result[i]) - 32); + end; + stringToUpper:= result; end; function stringToLower(str : pchar) : pchar; +var + result : pchar; + i : uint32; + begin - + result:= stringCopy(str); + for i:=0 to stringSize(result) do begin + if (byte(result[i]) >= 65) and (byte(result[i]) <= 90) then result[i]:= char(byte(result[i]) + 32); + end; + stringToLower:= result; end; function stringEquals(str1, str2 : pchar) : boolean; @@ -54,7 +70,8 @@ var begin size:= stringSize(str); result:= stringNew(size); - memcpy(uint32(str), uint32(result), size); + memcpy(uint32(str), uint32(result), size); + stringCopy:= result; end; function stringNew(size : uint32) : pchar; @@ -80,8 +97,15 @@ begin end; function stringConcat(str1, str2 : pchar) : pchar; +var + size : uint32; + result : pchar; + begin - + result:= stringNew(stringSize(str1)+stringSize(str2)); + memcpy(uint32(str1), uint32(result), stringSize(str1)); + memcpy(uint32(str2), uint32(result+stringSize(str1)), stringSize(str2)); + stringConcat:= result; end; function stringContains(str : pchar; sub : pchar) : boolean;