I´m start to make a second vesion of Soberango and I want to use bitboards.
And I need to start from zero knowledge about bitboards.
I understood, or at least I think so, how to deal with no sliding pieces.
Now I´m trying to understand how to deal with sliding pieces.
My first question is which operation is this where I put red interrogation signs:

"-" seems to be XOR as I deduced from o - s
"^" means XOR too as I deduced from o ^( o - 2s) ??!!
I think 2s could be shift bits of s one step to the msb, but anyway I cant reach that result.
In short: I need to know the meaning of : "-"; "2" and "^" in terms of AND, OR, NOT, XOR. shl (shift one bit left) and shr (shift one bit right).
Thanks!