Also grundsätzlich übergibst du die Parameter in der Reihenfolge wie du willst und wenn ein Leerzeichen vorkommen kann, dann in Anführungszeichen:

C:\pfad\batch.bat parameter1 "das ist der zweite parameter" 3
in der Batch schauts dann so aus:
%1 = parameter1
%2 = "das ist der zweite parameter"
%3 = 3

Wenn du jetzt ein Programm mit FMS32pro ausrufst, dann haben die Platzhalter in FMS32pro(%x) nichts mit den Parametern in der Batch (auch %x) zu tun.
In der Batch wird einfach durch gezählt.