Register 0 cannot be used as a base or index register. This is because 0 in the base or index register field or an instruction means "no register". The assembler has always allowed the specification of 0 for either to satisfy the people who just like to code default stuff.
Clearing a register before LH strongly implies the coder doesn't know what LH does. The L R4,AXVAL should be LH. sas
