IF (porta AND %00000101) = 1 THEN

Your logic is flawed because for example if bit PortA.2 is set then the equation would equal 4 and not 1.

Try this instead...

If (PortA and %00000101)<>0 then