X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=hachu.c;h=58f63346346b8e2039b7be69b5c875072349a1b0;hb=313b9b197b70ca0fbf92c6d097738d0d94c31d4e;hp=c9350aedce27fa4cb77c48c14c52820f0f440bd7;hpb=79c2db473050b802ced129d39a557e47053a2f71;p=hachu.git diff --git a/hachu.c b/hachu.c index c9350ae..58f6334 100644 --- a/hachu.c +++ b/hachu.c @@ -18,6 +18,7 @@ #define HASH #define KILLERS +#define NULLMOVE #include #include @@ -1633,10 +1634,10 @@ if(flag && depth>= 0) printf("phase=%d: first/curr/last = %d / %d / %d\n", phase bestScore = curEval; resDep = QSdepth; if(bestScore >= beta || depth < -1) goto cutoff; } -#if 0 - if(curEval >= beta) { +#ifdef NULLMOVE + else if(curEval >= beta) { stm ^= WHITE; - score = -Search(-beta, -iterAlpha, -difEval, depth-3, promoSuppress & SQUARE, ABSENT); + score = -Search(-beta, 1-beta, -difEval, depth > 3 ? depth-3 : 0, promoSuppress & SQUARE, ABSENT); stm ^= WHITE; if(score >= beta) { msp = oldMSP; retDep += 3; return score + (score < curEval); } }