the equal sign is not used correctly....
single equal sign is used for assignment, for example:
double equal sign is used for comparison, for example
IF nGripper_Act==666 THEN
;...
ENDIF
sometimes both are used in same line of code:
$OUT[666] = nGripper_ACT==666
which is just a short form of
IF nGripper_Act==666 THEN
$OUT[666] = TRUE
ELSE
$OUT[666] = FALSE
ENDIF
GRPg_SetStateAndCheck is a subprogram and normally it should be in some SRC file that is part of your version of GripperTech
GRPg_Check is a function and also should be part of that SRC.
When calling subroutines (subprograms or functions) one may need to pass parameters. those are the values that you see between brackets after subroutine name. Depending on declaration of the parameters, this may or may not be omitted, may or may not be a literal and may or may not work with your variable (Depends on scope of your variable).
order of parameters must be followed and if one does not want to specify value for one of them, then leave it empty but keep commas since they are used to determine order and place of parameters.
Example:
MsgNotify("Hello") ; one parameter
MsgNotify("Hello",) ; two parameters but only first one is given value, the second one is empty
MsgNotify("Hello", "MyProgram",,,12345); parameters 3 and 4 are empty, all others are initialized by a literal
literal is just a hardcoded value.