I am still smiling. Really there is no point to do additional rotations when you have two good thoroughly randomized hash keys in [piece] and [square]. It beats anything else because it requires one simple operation given those tables.You were laughing towards me. Even you posted a 'smile'.
As for a few minutes you thought you could beat the combination of
rotation with addition with just addition.
You suggested a rotation method while using tables..what is the point in that? It sure is going to be dog slow compared to simple addition.
You don't get what is being said. Like I said addition is the simplest there is given two tables. You _also_ use tables so the rotations are unnecessary.Don acked you in that.
Also explicitly mentions only addition.
That's 2 of you.
Fact is what i posted is about a 5x faster than what you showed up with.
Even the method I suggested later that produces the keys from scratch is different from yours. RanRot does two fixed rotations of 5 and 3, so it automatically means use of tables. But if you just rotate by 1 bit for each square (upto 64), you can avoid table lookups...
I was out of line and apologize for that.p.s. it's good habit to remove the 'you are so dumb' you initially posted.