also:
diff --git a/Units/MMLAddon/PSInc/Wrappers/math.inc b/Units/MMLAddon/PSInc/Wrappers/math.inc
index 7ae1342..3f08bdd 100644
--- a/Units/MMLAddon/PSInc/Wrappers/math.inc
+++ b/Units/MMLAddon/PSInc/Wrappers/math.inc
@@ -155,3 +155,18 @@ function ps_floor(e : extended) : integer; extdecl;
begin;
result := floor(e);
end;
+
+function ps_log2(x: extended): extended; extdec1;
+begin
+ result := log2(x);
+end;
+
+function ps_log10(x: extended): extended; extdec1;
+begin
+ result := log10(x);
+end;
+
+function ps_logn(x, n: extended): extended; extdec1;
+begin
+ result := logn(x, n);
+end;
diff --git a/Units/MMLAddon/PSInc/Wrappers/other.inc b/Units/MMLAddon/PSInc/Wrappers/other.inc
index 80df22d..cd2bf02 100644
--- a/Units/MMLAddon/PSInc/Wrappers/other.inc
+++ b/Units/MMLAddon/PSInc/Wrappers/other.inc
@@ -118,6 +118,7 @@ procedure ps_TerminateScript; extdecl;
begin;
CurrThread.Terminate;
end;
+
function ps_GetTimeRunning: LongWord; extdecl;
begin;
result := GetTickCount - CurrThread.StartTime;
diff --git a/Units/MMLAddon/PSInc/psexportedmethods.inc b/Units/MMLAddon/PSInc/psexportedmethods.inc
index b85d2d8..f9e8bfe 100644
--- a/Units/MMLAddon/PSInc/psexportedmethods.inc
+++ b/Units/MMLAddon/PSInc/psexportedmethods.inc
@@ -49,6 +49,9 @@ AddFunction(nil,'function Round(e:extended) : integer');
AddFunction(@ps_ceil,'function ceil(e : extended) : integer');
AddFunction(@ps_floor,'function floor(e : extended) : integer');
AddFunction(@ps_pow,'function pow(base,exponent : extended) : extended');
+AddFunction(@ps_log2,'function log2(x: Extended): Extended');
+AddFunction(@ps_log10,'function log10(x: Extended): Extended');
+AddFunction(@ps_logn,'function logN(x, base: Extended): Extended');
AddFunction(@ps_max,'function Max(a, b: Integer): Integer;');
AddFunction(@ps_min,'function Min(a, b: Integer): Integer;');
AddFunction(@ps_minE,'function MinE(a, b: extended): Extended;');
I have a patch as well.