You can perform your own alarm state calculations using any of the function blocks. Typically, you would use function blocks that support expressions, such as:
Condition function block
Calc/Logic function block
The alarm state calculation typically uses logical and relational operators to: test the values in one or more parameters, compute a Boolean result (0 or 1), and write it to a new state parameter.