関係ないけど
r1 *= 10;って書くより
r1 = (r1 << 3) + (r1 << 1);
のほうがいいの?