The available piece-square tables are now assigned dependent on the
variant, where a new variant-idexed table of strings indicates which
table goes with which piece.
"S.....F..........^F.P........^S....L........C......RKs.....f..........^f.p........^s....l........c......rk"
};
+char *pstType[] = {
+ "",
+ "307716 777718",
+ "3077160 7777187",
+ "3077160 7777187",
+ "3055676777060100 77100787777801",
+ "770076 100001"
+};
+
typedef struct {
int files, ranks, hand, zone;
char *name;
rookPST[22*r+f] = rookPST[22*xr+f+11] = 45*(xr < zone);
}
+ for(f=0,p=pstType[v]; *p; p++,f++) if(*p == ' ') f = 15; else PST[BLACK+f] = (PST[WHITE+f] = pstData + 22*11*(*p - '0')) + 11*(*p > '2');
+
InitCaptureCodes(variants[v].codes);
pinCodes = (v == 5 ? 0xFF2C : 0xFF1F); // rays along which pinning ispossible
}