Yes Emil, it will give you optional param with the syntax used above. However during the course of my checks, I found some anomalies, with mixed optional and default value calls, which I will need to fix. But for your optional params, it should be okay.
extern lib "tdll.dll"
! ff1(sys a=0,b,c,d) as sys1
end extern
ff1 2,3
------->
includepath "$/inc/"
$filename "tdll.dll"
$dll
include "RTL32.inc"
extern export
function ff1(sys a,b,c,d) as sys
string cm=","
print a cm b cm c cm d
end function