Ok, I'll bite.
You say that you expect that R5 will be set to 0 - I hope that you mean set to 5, as that is what L R5,=F'5' should normally do.
I took the program from your link and did an assembly. It ended rc 12 with these errors:
000000 00000 07E1D 36 BF START 0
ASMA153S START statement illegal - CSECT already begun
ASMA435I Record 3 in xx.ASMTEST.JOB02782.D0000101.? on volume:
000074 0000 0000 00000 78 wloop_0_e NOP
ASMA040S Missing operand
Fix:
1) change 'START 0' to 'CSECT'
2) change 'wloop_0_e NOP' to 'wloop_0_e ds 0a'. You might also use 'wloop_0_e CNOP 0,4', but in this case 'ds 0a' works just as well.
After which it assembles and runs with rc 0.
Comments:
You have two LTORG. While not neccessarily a problem, for a program this small I would just go with the last one.
As other have pointed out, the top of the program is a bit confusing. You have a 'LR R12,R15', which would indicate that you want to use R12 as a base, but then you do 'BALR R2,0' and 'USING *,R2' to set the base to R2. Personally I would do 'LR R12,R15' and 'USING BF,R12'.
And now back your stated problem. I added a ' DC A(0)' right after the 'L R5,=F'5', but the program did not abend. This tells me that the instruction is never executed, so whatever value your debugger shows r5 to have, will be the value it had before your program was started. Or in other words, you have a logic issue with your program.
Hope this helps.