The leaper bit in the secondary rights (in combination with primary
rights = 4, the double-push code) is used to indicate the e.p. square
should not be set. In this case the secondary hopper bit indicates if
the double push can even be made if the intermediate square is occupied
(to make it a rank-dependent leaper move rather than a true double-
push). In al cases these secondary bits are cleared.
((b[G=r<0?x&~15:BW-1|x&112]^32)<33 /* no virgin R in corner G, */\r
||b[G^1]|b[G^2]|b[FF=y+v-r]) /* no 2 empty sq. next to R */\r
)t+=flag&4; /* fake capt. for nonsliding*/\r
- else F=y; /* enable e.p. */\r
+ else if(flag&64)t=flag&128?0:t,flag&=63;else F=y; /* enable e.p. */\r
if(s&&flag&8)t=0,flag^=flag>>4&15; /* hoppers go to next phase */\r
if(!(flag&S)) /* zig-zag piece? */\r
r=v,flag^=flag>>4&15; /* alternate vector & mode */\r