This doesn't look right, but it works. EZGPIB uses a 'magic' variable called Result to return results from a function - it's shown in some of the examples. Not sure why you can't specify the calling parameters. I think that the Pascal engine in EZGPIB is Remobjects (
http://www.remobjects.com/ps.aspx ) with some custom extensions. I don't know if there's any documentation on the specific syntax for Remobjects. I do know that there are some errors in the syntax of the extensions - things like commas and semicolons, so step carefully.
If you want to run a second copy of EZGPIB, just do it. As long as you're not fighting for specific hardware, I think it works okay. Worst case, copy the relevant files to a different directory and run the second copy from there.
Program TestFunction;
Const
A = 2;
B = 9;
Function fAdd : Integer;
Begin
Result := A + B;
End;
Begin
EZGPIB_ScreenWriteln(fAdd);
End.