1 - 8 number are line number and my understanding to corresponding line is mentioned below.
1. Convert ACBRKNO i.e. packed Agent No (from 2nd Position) to BRKRNO(5)zoned Agent No
2. Moves the zone portion (left half of a byte).
3. Compare BRKRNO with X'F0'
4. Branch to CKBRKER when BRKRNO is low.
5. Insert BRKRNO into R6 register at right most side.
6. Subtracts 57 from R6 register i.e. from last two-byte value.
7. Stores one character at right most byte from BRKRNO.
8. Character comparision.
Please correct me if my understanding is wrong.
Kindly, explain me this logic with an example. Please.
the result of the unpack will yield an F zone for every digit,
the move zone will force a F zone for the last digit
all this implies that all all the digits will be grater than F0
the comparison as coded will always give a false and the negative branch will be never taken
but if the code is trying do fiddle around with some kind of hex conversion
x'A.....' ==> x'FAF.F.F.F.'
x'FA' ==> 250 ; 250 - 57 = 193 ==> x'C1' ==> c'A'
the code would be wrong because of my previous explanation
the comparison should be made with an x'FA'
not the best way to do it
unless the only byte to be converted is the first one