This always causes people lots of problems. I find that the easiest way of working out a condition code is as follows. Suppose that you have the condition code cond=(4,le,stepone). If you read this as don't run this step if 4 is less than or equal to the condition code returned from stepone then you are reading the condition code the right way.
If a particular step is not mentioned then the maximum condition code returned so far is checked. ONLY means run the step only if there was a previous condition that was so bad that the job would normally be completely abandoned rather than returning a condition code and EVEN means run the step even if such a condition occurs as well as when the other conditions are met.
This article written by Stephen Chapman, Felgall Pty Ltd.