| 1 | diff -u engine/dragon.c engine/dragon.c |
|---|
| 2 | --- engine/dragon.c 7 Oct 2005 07:03:05 -0000 |
|---|
| 3 | +++ engine/dragon.c 7 Oct 2005 07:21:24 -0000 |
|---|
| 4 | @@ -1849,7 +1849,7 @@ |
|---|
| 5 | * in the goal array. |
|---|
| 6 | */ |
|---|
| 7 | int |
|---|
| 8 | -dragon_escape(char goal[BOARDMAX], int color, |
|---|
| 9 | +dragon_escape(signed char goal[BOARDMAX], int color, |
|---|
| 10 | signed char escape_value[BOARDMAX]) |
|---|
| 11 | { |
|---|
| 12 | int ii; |
|---|
| 13 | @@ -2004,7 +2004,7 @@ |
|---|
| 14 | compute_escape(int pos, int dragon_status_known) |
|---|
| 15 | { |
|---|
| 16 | int ii; |
|---|
| 17 | - char goal[BOARDMAX]; |
|---|
| 18 | + signed char goal[BOARDMAX]; |
|---|
| 19 | signed char escape_value[BOARDMAX]; |
|---|
| 20 | signed char safe_stones[BOARDMAX]; |
|---|
| 21 | |
|---|
| 22 | diff -u engine/liberty.h engine/liberty.h |
|---|
| 23 | --- engine/liberty.h 7 Oct 2005 07:03:05 -0000 |
|---|
| 24 | +++ engine/liberty.h 7 Oct 2005 07:21:25 -0000 |
|---|
| 25 | @@ -192,10 +192,10 @@ |
|---|
| 26 | int *stones, int num_stones); |
|---|
| 27 | void matchpat(matchpat_callback_fn_ptr callback, int color, |
|---|
| 28 | struct pattern_db *pdb, void *callback_data, |
|---|
| 29 | - char goal[BOARDMAX]); |
|---|
| 30 | + signed char goal[BOARDMAX]); |
|---|
| 31 | void matchpat_goal_anchor(matchpat_callback_fn_ptr callback, int color, |
|---|
| 32 | struct pattern_db *pdb, void *callback_data, |
|---|
| 33 | - char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 34 | + signed char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 35 | void fullboard_matchpat(fullboard_matchpat_callback_fn_ptr callback, |
|---|
| 36 | int color, struct fullboard_pattern *pattern); |
|---|
| 37 | void corner_matchpat(corner_matchpat_callback_fn_ptr callback, int color, |
|---|
| 38 | @@ -261,7 +261,7 @@ |
|---|
| 39 | void store_persistent_owl_cache(enum routine_id routine, |
|---|
| 40 | int apos, int bpos, int cpos, |
|---|
| 41 | int result, int move, int move2, int certain, |
|---|
| 42 | - int tactical_nodes, char goal[BOARDMAX], |
|---|
| 43 | + int tactical_nodes, signed char goal[BOARDMAX], |
|---|
| 44 | int goal_color); |
|---|
| 45 | void owl_hotspots(float values[BOARDMAX]); |
|---|
| 46 | int search_persistent_semeai_cache(enum routine_id routine, |
|---|
| 47 | @@ -274,7 +274,8 @@ |
|---|
| 48 | Hash_data *goal_hash, |
|---|
| 49 | int resulta, int resultb, |
|---|
| 50 | int move, int certain, int tactical_nodes, |
|---|
| 51 | - char goala[BOARDMAX], char goalb[BOARDMAX]); |
|---|
| 52 | + signed char goala[BOARDMAX], |
|---|
| 53 | + signed char goalb[BOARDMAX]); |
|---|
| 54 | |
|---|
| 55 | |
|---|
| 56 | /* readconnect.c */ |
|---|
| 57 | @@ -311,7 +312,7 @@ |
|---|
| 58 | |
|---|
| 59 | void compute_new_dragons(int dragon_origins[BOARDMAX]); |
|---|
| 60 | void join_dragons(int d1, int d2); |
|---|
| 61 | -int dragon_escape(char goal[BOARDMAX], int color, |
|---|
| 62 | +int dragon_escape(signed char goal[BOARDMAX], int color, |
|---|
| 63 | signed char escape_value[BOARDMAX]); |
|---|
| 64 | void compute_refined_dragon_weaknesses(void); |
|---|
| 65 | |
|---|
| 66 | @@ -679,7 +680,7 @@ |
|---|
| 67 | |
|---|
| 68 | |
|---|
| 69 | /* debugging support */ |
|---|
| 70 | -void goaldump(const char goal[BOARDMAX]); |
|---|
| 71 | +void goaldump(const signed char goal[BOARDMAX]); |
|---|
| 72 | void move_considered(int move, float value); |
|---|
| 73 | |
|---|
| 74 | |
|---|
| 75 | diff -u engine/owl.c engine/owl.c |
|---|
| 76 | --- engine/owl.c 7 Oct 2005 07:03:06 -0000 |
|---|
| 77 | +++ engine/owl.c 7 Oct 2005 07:21:29 -0000 |
|---|
| 78 | @@ -67,17 +67,17 @@ |
|---|
| 79 | /* not called */ |
|---|
| 80 | |
|---|
| 81 | struct local_owl_data { |
|---|
| 82 | - char goal[BOARDMAX]; |
|---|
| 83 | - char boundary[BOARDMAX]; |
|---|
| 84 | + signed char goal[BOARDMAX]; |
|---|
| 85 | + signed char boundary[BOARDMAX]; |
|---|
| 86 | /* Same as goal, except never anything is removed from it. */ |
|---|
| 87 | - char cumulative_goal[BOARDMAX]; |
|---|
| 88 | + signed char cumulative_goal[BOARDMAX]; |
|---|
| 89 | |
|---|
| 90 | /* FIXME: neighbors[] and escape_values[] are never recomputed. |
|---|
| 91 | * Consider moving these arrays from stack to a static or |
|---|
| 92 | * dynamic variable so it is not copied around in |
|---|
| 93 | * do_push_owl(). Be aware of semeai code though. |
|---|
| 94 | */ |
|---|
| 95 | - char neighbors[BOARDMAX]; |
|---|
| 96 | + signed char neighbors[BOARDMAX]; |
|---|
| 97 | |
|---|
| 98 | signed char escape_values[BOARDMAX]; |
|---|
| 99 | int color; |
|---|
| 100 | @@ -91,11 +91,11 @@ |
|---|
| 101 | int lunch_attack_point[MAX_LUNCHES]; |
|---|
| 102 | int lunch_defend_code[MAX_LUNCHES]; |
|---|
| 103 | int lunch_defense_point[MAX_LUNCHES]; |
|---|
| 104 | - char inessential[BOARDMAX]; |
|---|
| 105 | + signed char inessential[BOARDMAX]; |
|---|
| 106 | |
|---|
| 107 | int lunches_are_current; /* If true, owl lunch data is current */ |
|---|
| 108 | |
|---|
| 109 | - char safe_move_cache[BOARDMAX]; |
|---|
| 110 | + signed char safe_move_cache[BOARDMAX]; |
|---|
| 111 | |
|---|
| 112 | /* This is used to organize the owl stack. */ |
|---|
| 113 | struct local_owl_data *restore_from; |
|---|
| 114 | @@ -217,7 +217,8 @@ |
|---|
| 115 | static void owl_mark_boundary(struct local_owl_data *owl); |
|---|
| 116 | static void owl_update_goal(int pos, int same_dragon, int lunch, |
|---|
| 117 | struct local_owl_data *owl, int semeai_call); |
|---|
| 118 | -static void owl_test_cuts(char goal[BOARDMAX], int color, int cuts[MAX_CUTS]); |
|---|
| 119 | +static void owl_test_cuts(signed char goal[BOARDMAX], int color, |
|---|
| 120 | + int cuts[MAX_CUTS]); |
|---|
| 121 | static void componentdump(const signed char component[BOARDMAX]); |
|---|
| 122 | static void owl_update_boundary_marks(int pos, struct local_owl_data *owl); |
|---|
| 123 | static void owl_find_lunches(struct local_owl_data *owl); |
|---|
| 124 | @@ -256,7 +257,7 @@ |
|---|
| 125 | struct local_owl_data *owlb, int color, |
|---|
| 126 | int *safe_outside_liberty_found, |
|---|
| 127 | int *safe_common_liberty_found, |
|---|
| 128 | - char mw[BOARDMAX], |
|---|
| 129 | + signed char mw[BOARDMAX], |
|---|
| 130 | struct owl_move_data semeai_moves[MAX_SEMEAI_MOVES], |
|---|
| 131 | int guess_same_dragon, int value_bonus, |
|---|
| 132 | int *critical_semeai_worms); |
|---|
| 133 | @@ -267,7 +268,7 @@ |
|---|
| 134 | static int liberty_of_goal(int pos, struct local_owl_data *owl); |
|---|
| 135 | static int second_liberty_of_goal(int pos, struct local_owl_data *owl); |
|---|
| 136 | static int matches_found; |
|---|
| 137 | -static char found_matches[BOARDMAX]; |
|---|
| 138 | +static signed char found_matches[BOARDMAX]; |
|---|
| 139 | |
|---|
| 140 | static void reduced_init_owl(struct local_owl_data **owl, |
|---|
| 141 | int at_bottom_of_stack); |
|---|
| 142 | @@ -368,7 +369,7 @@ |
|---|
| 143 | int owl, int *semeai_result_certain, |
|---|
| 144 | int recompute_dragons) |
|---|
| 145 | { |
|---|
| 146 | - char ms[BOARDMAX]; |
|---|
| 147 | + signed char ms[BOARDMAX]; |
|---|
| 148 | int w1, w2; |
|---|
| 149 | int str; |
|---|
| 150 | SGFTree *save_sgf_dumptree = sgf_dumptree; |
|---|
| 151 | @@ -621,7 +622,7 @@ |
|---|
| 152 | struct owl_move_data backfill_common_liberty; |
|---|
| 153 | int safe_outside_liberty_found = 0; |
|---|
| 154 | int safe_common_liberty_found = 0; |
|---|
| 155 | - char mw[BOARDMAX]; |
|---|
| 156 | + signed char mw[BOARDMAX]; |
|---|
| 157 | int k; |
|---|
| 158 | SGFTree *save_sgf_dumptree = sgf_dumptree; |
|---|
| 159 | int save_count_variations = count_variations; |
|---|
| 160 | @@ -1362,7 +1363,7 @@ |
|---|
| 161 | struct local_owl_data *owlb, int color, |
|---|
| 162 | int *safe_outside_liberty_found, |
|---|
| 163 | int *safe_common_liberty_found, |
|---|
| 164 | - char mw[BOARDMAX], |
|---|
| 165 | + signed char mw[BOARDMAX], |
|---|
| 166 | struct owl_move_data semeai_moves[MAX_SEMEAI_MOVES], |
|---|
| 167 | int guess_same_dragon, int value_bonus, |
|---|
| 168 | int *critical_semeai_worms) |
|---|
| 169 | @@ -1772,7 +1773,7 @@ |
|---|
| 170 | struct owl_move_data shape_moves[MAX_MOVES]; |
|---|
| 171 | struct owl_move_data *moves; |
|---|
| 172 | struct matched_patterns_list_data shape_patterns; |
|---|
| 173 | - char mw[BOARDMAX]; |
|---|
| 174 | + signed char mw[BOARDMAX]; |
|---|
| 175 | int number_tried_moves = 0; |
|---|
| 176 | int pass; |
|---|
| 177 | int k; |
|---|
| 178 | @@ -2234,7 +2235,7 @@ |
|---|
| 179 | struct local_owl_data *owl; |
|---|
| 180 | int result = 0; |
|---|
| 181 | int reading_nodes_when_called = get_reading_node_counter(); |
|---|
| 182 | - char saved_boundary[BOARDMAX]; |
|---|
| 183 | + signed char saved_boundary[BOARDMAX]; |
|---|
| 184 | double start = 0.0; |
|---|
| 185 | int tactical_nodes; |
|---|
| 186 | int move = 0; |
|---|
| 187 | @@ -2418,7 +2419,7 @@ |
|---|
| 188 | struct owl_move_data vital_moves[MAX_MOVES]; |
|---|
| 189 | struct owl_move_data *moves; |
|---|
| 190 | struct matched_patterns_list_data shape_patterns; |
|---|
| 191 | - char mw[BOARDMAX]; |
|---|
| 192 | + signed char mw[BOARDMAX]; |
|---|
| 193 | int number_tried_moves = 0; |
|---|
| 194 | int pass; |
|---|
| 195 | int k; |
|---|
| 196 | @@ -2752,7 +2753,7 @@ |
|---|
| 197 | int result = 0; |
|---|
| 198 | struct local_owl_data *owl; |
|---|
| 199 | int reading_nodes_when_called = get_reading_node_counter(); |
|---|
| 200 | - char saved_goal[BOARDMAX]; |
|---|
| 201 | + signed char saved_goal[BOARDMAX]; |
|---|
| 202 | double start = 0.0; |
|---|
| 203 | int tactical_nodes; |
|---|
| 204 | int move = 0; |
|---|
| 205 | @@ -3995,7 +3996,7 @@ |
|---|
| 206 | { |
|---|
| 207 | int k; |
|---|
| 208 | int num = 0; |
|---|
| 209 | - char mark[BOARDMAX]; |
|---|
| 210 | + signed char mark[BOARDMAX]; |
|---|
| 211 | |
|---|
| 212 | memset(mark, 0, BOARDMAX); |
|---|
| 213 | for (k = 0; k < pattern->patlen; k++) { |
|---|
| 214 | @@ -4635,7 +4636,7 @@ |
|---|
| 215 | * so we leave it here for now. |
|---|
| 216 | */ |
|---|
| 217 | static int |
|---|
| 218 | -connected_components(char graph[MAX_CUTS][MAX_CUTS], int graph_size, |
|---|
| 219 | +connected_components(signed char graph[MAX_CUTS][MAX_CUTS], int graph_size, |
|---|
| 220 | signed char component[MAX_CUTS]) |
|---|
| 221 | { |
|---|
| 222 | int num_components = 0; |
|---|
| 223 | @@ -4673,10 +4674,10 @@ |
|---|
| 224 | * to the biggest remaining component. |
|---|
| 225 | */ |
|---|
| 226 | static void |
|---|
| 227 | -owl_test_cuts(char goal[BOARDMAX], int color, int cuts[MAX_CUTS]) |
|---|
| 228 | +owl_test_cuts(signed char goal[BOARDMAX], int color, int cuts[MAX_CUTS]) |
|---|
| 229 | { |
|---|
| 230 | int k, j; |
|---|
| 231 | - char connected[MAX_CUTS][MAX_CUTS]; |
|---|
| 232 | + signed char connected[MAX_CUTS][MAX_CUTS]; |
|---|
| 233 | /* int connect_move[MAX_CUTS][MAX_CUTS]; */ |
|---|
| 234 | int num_cuts; |
|---|
| 235 | int found_cut = 0; |
|---|
| 236 | @@ -4825,7 +4826,7 @@ |
|---|
| 237 | static void |
|---|
| 238 | owl_update_boundary_marks(int pos, struct local_owl_data *owl) |
|---|
| 239 | { |
|---|
| 240 | - char boundary_mark = 0; |
|---|
| 241 | + signed char boundary_mark = 0; |
|---|
| 242 | int k; |
|---|
| 243 | |
|---|
| 244 | for (k = 0; k < 4; k++) { |
|---|
| 245 | @@ -4850,7 +4851,7 @@ |
|---|
| 246 | */ |
|---|
| 247 | |
|---|
| 248 | void |
|---|
| 249 | -goaldump(const char goal[BOARDMAX]) |
|---|
| 250 | +goaldump(const signed char goal[BOARDMAX]) |
|---|
| 251 | { |
|---|
| 252 | int pos; |
|---|
| 253 | for (pos = BOARDMIN; pos < BOARDMAX; pos++) |
|---|
| 254 | @@ -5508,7 +5509,7 @@ |
|---|
| 255 | int dpos; |
|---|
| 256 | int color = owl->color; |
|---|
| 257 | int other = OTHER_COLOR(color); |
|---|
| 258 | - char already_checked[BOARDMAX]; |
|---|
| 259 | + signed char already_checked[BOARDMAX]; |
|---|
| 260 | |
|---|
| 261 | SGFTree *save_sgf_dumptree = sgf_dumptree; |
|---|
| 262 | int save_count_variations = count_variations; |
|---|
| 263 | @@ -6205,7 +6206,7 @@ |
|---|
| 264 | /* if the escape route is already large enough to be considered |
|---|
| 265 | * a WIN by the owl code, then no need for more */ |
|---|
| 266 | if (before < 5) { |
|---|
| 267 | - char new_goal[BOARDMAX]; |
|---|
| 268 | + signed char new_goal[BOARDMAX]; |
|---|
| 269 | memcpy(new_goal, owl->goal, sizeof(new_goal)); |
|---|
| 270 | for (n = 0; n < neighbors; n++) |
|---|
| 271 | if (!owl->goal[adjacent[n]]) |
|---|
| 272 | @@ -6293,7 +6294,7 @@ |
|---|
| 273 | else { |
|---|
| 274 | int pos2; |
|---|
| 275 | signed char escape_values[BOARDMAX]; |
|---|
| 276 | - char dragon[BOARDMAX]; |
|---|
| 277 | + signed char dragon[BOARDMAX]; |
|---|
| 278 | |
|---|
| 279 | compute_escape_influence(owl->color, safe_stones, owl->goal, NULL, |
|---|
| 280 | escape_values); |
|---|
| 281 | diff -u engine/persistent.c engine/persistent.c |
|---|
| 282 | --- engine/persistent.c 7 Oct 2005 07:03:07 -0000 |
|---|
| 283 | +++ engine/persistent.c 7 Oct 2005 07:21:29 -0000 |
|---|
| 284 | @@ -1112,7 +1112,7 @@ |
|---|
| 285 | int apos, int bpos, int cpos, |
|---|
| 286 | int result, int move, int move2, int certain, |
|---|
| 287 | int tactical_nodes, |
|---|
| 288 | - char goal[BOARDMAX], int goal_color) |
|---|
| 289 | + signed char goal[BOARDMAX], int goal_color) |
|---|
| 290 | { |
|---|
| 291 | store_persistent_cache(&owl_cache, routine, apos, bpos, cpos, EMPTY, NULL, |
|---|
| 292 | result, NO_MOVE, move, move2, certain, owl_node_limit, |
|---|
| 293 | @@ -1269,7 +1269,8 @@ |
|---|
| 294 | Hash_data *goal_hash, |
|---|
| 295 | int resulta, int resultb, int move, int certain, |
|---|
| 296 | int tactical_nodes, |
|---|
| 297 | - char goala[BOARDMAX], char goalb[BOARDMAX]) |
|---|
| 298 | + signed char goala[BOARDMAX], |
|---|
| 299 | + signed char goalb[BOARDMAX]) |
|---|
| 300 | { |
|---|
| 301 | char goal[BOARDMAX]; |
|---|
| 302 | int pos; |
|---|
| 303 | only in patch2: |
|---|
| 304 | unchanged: |
|---|
| 305 | --- engine/printutils.c 12 Jun 2005 09:34:14 -0000 1.52 |
|---|
| 306 | +++ engine/printutils.c 7 Oct 2005 07:21:29 -0000 |
|---|
| 307 | @@ -514,7 +514,7 @@ simple_showboard(FILE *outfile) |
|---|
| 308 | * This function cannot be in sgf/ as it has to understand the 1-D board. |
|---|
| 309 | */ |
|---|
| 310 | void |
|---|
| 311 | -mark_goal_in_sgf(char goal[BOARDMAX]) |
|---|
| 312 | +mark_goal_in_sgf(signed char goal[BOARDMAX]) |
|---|
| 313 | { |
|---|
| 314 | int pos; |
|---|
| 315 | SGFNode *node; |
|---|
| 316 | only in patch2: |
|---|
| 317 | unchanged: |
|---|
| 318 | --- engine/matchpat.c 28 Sep 2005 21:52:04 -0000 1.71 |
|---|
| 319 | +++ engine/matchpat.c 7 Oct 2005 07:21:26 -0000 |
|---|
| 320 | @@ -139,11 +139,11 @@ static void fixup_patterns_for_board_siz |
|---|
| 321 | static void prepare_for_match(int color); |
|---|
| 322 | static void do_matchpat(int anchor, matchpat_callback_fn_ptr callback, |
|---|
| 323 | int color, struct pattern *database, |
|---|
| 324 | - void *callback_data, char goal[BOARDMAX]); |
|---|
| 325 | + void *callback_data, signed char goal[BOARDMAX]); |
|---|
| 326 | static void matchpat_loop(matchpat_callback_fn_ptr callback, |
|---|
| 327 | int color, int anchor, |
|---|
| 328 | struct pattern_db *pdb, void *callback_data, |
|---|
| 329 | - char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 330 | + signed char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 331 | |
|---|
| 332 | /* Precomputed tables to allow rapid checks on the piece at |
|---|
| 333 | * the board. This table relies on the fact that color is |
|---|
| 334 | @@ -311,7 +311,7 @@ transform2(int i, int j, int *ti, int *t |
|---|
| 335 | static void |
|---|
| 336 | do_matchpat(int anchor, matchpat_callback_fn_ptr callback, int color, |
|---|
| 337 | struct pattern *pattern, void *callback_data, |
|---|
| 338 | - char goal[BOARDMAX]) |
|---|
| 339 | + signed char goal[BOARDMAX]) |
|---|
| 340 | { |
|---|
| 341 | const int anchor_test = board[anchor] ^ color; /* see below */ |
|---|
| 342 | int m = I(anchor); |
|---|
| 343 | @@ -509,7 +509,7 @@ do_matchpat(int anchor, matchpat_callbac |
|---|
| 344 | static void |
|---|
| 345 | matchpat_loop(matchpat_callback_fn_ptr callback, int color, int anchor, |
|---|
| 346 | struct pattern_db *pdb, void *callback_data, |
|---|
| 347 | - char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 348 | + signed char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 349 | { |
|---|
| 350 | int pos; |
|---|
| 351 | |
|---|
| 352 | @@ -548,18 +548,18 @@ static int scan_for_patterns(dfa_rt_t *p |
|---|
| 353 | static void do_dfa_matchpat(dfa_rt_t *pdfa, |
|---|
| 354 | int anchor, matchpat_callback_fn_ptr callback, |
|---|
| 355 | int color, struct pattern *database, |
|---|
| 356 | - void *callback_data, char goal[BOARDMAX], |
|---|
| 357 | + void *callback_data, signed char goal[BOARDMAX], |
|---|
| 358 | int anchor_in_goal); |
|---|
| 359 | static void check_pattern_light(int anchor, |
|---|
| 360 | matchpat_callback_fn_ptr callback, |
|---|
| 361 | int color, struct pattern *pattern, int ll, |
|---|
| 362 | void *callback_data, |
|---|
| 363 | - char goal[BOARDMAX], |
|---|
| 364 | + signed char goal[BOARDMAX], |
|---|
| 365 | int anchor_in_goal); |
|---|
| 366 | static void dfa_matchpat_loop(matchpat_callback_fn_ptr callback, |
|---|
| 367 | int color, int anchor, |
|---|
| 368 | struct pattern_db *pdb, void *callback_data, |
|---|
| 369 | - char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 370 | + signed char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 371 | |
|---|
| 372 | |
|---|
| 373 | /***********************************************************************/ |
|---|
| 374 | @@ -682,7 +682,7 @@ static void |
|---|
| 375 | do_dfa_matchpat(dfa_rt_t *pdfa, |
|---|
| 376 | int anchor, matchpat_callback_fn_ptr callback, |
|---|
| 377 | int color, struct pattern *database, |
|---|
| 378 | - void *callback_data, char goal[BOARDMAX], |
|---|
| 379 | + void *callback_data, signed char goal[BOARDMAX], |
|---|
| 380 | int anchor_in_goal) |
|---|
| 381 | { |
|---|
| 382 | int k; |
|---|
| 383 | @@ -733,7 +733,7 @@ do_dfa_matchpat(dfa_rt_t *pdfa, |
|---|
| 384 | static void |
|---|
| 385 | check_pattern_light(int anchor, matchpat_callback_fn_ptr callback, int color, |
|---|
| 386 | struct pattern *pattern, int ll, void *callback_data, |
|---|
| 387 | - char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 388 | + signed char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 389 | { |
|---|
| 390 | int k; /* Iterate over elements of pattern */ |
|---|
| 391 | int found_goal = 0; |
|---|
| 392 | @@ -814,7 +814,7 @@ check_pattern_light(int anchor, matchpat |
|---|
| 393 | static void |
|---|
| 394 | dfa_matchpat_loop(matchpat_callback_fn_ptr callback, int color, int anchor, |
|---|
| 395 | struct pattern_db *pdb, void *callback_data, |
|---|
| 396 | - char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 397 | + signed char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 398 | { |
|---|
| 399 | int pos; |
|---|
| 400 | |
|---|
| 401 | @@ -835,7 +835,7 @@ dfa_matchpat_loop(matchpat_callback_fn_p |
|---|
| 402 | typedef void (*loop_fn_ptr_t)(matchpat_callback_fn_ptr callback, |
|---|
| 403 | int color, int anchor, |
|---|
| 404 | struct pattern_db *pdb, void *callback_data, |
|---|
| 405 | - char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 406 | + signed char goal[BOARDMAX], int anchor_in_goal); |
|---|
| 407 | |
|---|
| 408 | typedef void (*prepare_fn_ptr_t)(int color); |
|---|
| 409 | |
|---|
| 410 | @@ -852,7 +852,7 @@ typedef void (*prepare_fn_ptr_t)(int col |
|---|
| 411 | void |
|---|
| 412 | matchpat(matchpat_callback_fn_ptr callback, int color, |
|---|
| 413 | struct pattern_db *pdb, void *callback_data, |
|---|
| 414 | - char goal[BOARDMAX]) |
|---|
| 415 | + signed char goal[BOARDMAX]) |
|---|
| 416 | { |
|---|
| 417 | matchpat_goal_anchor(callback, color, pdb, callback_data, goal, |
|---|
| 418 | pdb->fixed_anchor); |
|---|
| 419 | @@ -861,7 +861,7 @@ matchpat(matchpat_callback_fn_ptr callba |
|---|
| 420 | void |
|---|
| 421 | matchpat_goal_anchor(matchpat_callback_fn_ptr callback, int color, |
|---|
| 422 | struct pattern_db *pdb, void *callback_data, |
|---|
| 423 | - char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 424 | + signed char goal[BOARDMAX], int anchor_in_goal) |
|---|
| 425 | { |
|---|
| 426 | loop_fn_ptr_t loop = matchpat_loop; |
|---|
| 427 | prepare_fn_ptr_t prepare = prepare_for_match; |
|---|
| 428 | only in patch2: |
|---|
| 429 | unchanged: |
|---|
| 430 | --- engine/hash.h 14 Sep 2005 18:33:20 -0000 1.35 |
|---|
| 431 | +++ engine/hash.h 7 Oct 2005 07:21:24 -0000 |
|---|
| 432 | @@ -80,7 +80,7 @@ typedef struct { |
|---|
| 433 | |
|---|
| 434 | extern Hash_data board_hash; |
|---|
| 435 | |
|---|
| 436 | -Hash_data goal_to_hashvalue(const char *goal); |
|---|
| 437 | +Hash_data goal_to_hashvalue(const signed char *goal); |
|---|
| 438 | |
|---|
| 439 | void hash_init_zobrist_array(Hash_data *array, int size); |
|---|
| 440 | void hash_init(void); |
|---|
| 441 | only in patch2: |
|---|
| 442 | unchanged: |
|---|
| 443 | --- engine/hash.c 14 Sep 2005 18:33:20 -0000 1.35 |
|---|
| 444 | +++ engine/hash.c 7 Oct 2005 07:21:24 -0000 |
|---|
| 445 | @@ -166,7 +166,7 @@ hashdata_invert_kom_pos(Hash_data *hd, i |
|---|
| 446 | |
|---|
| 447 | /* Compute hash value to identify the goal area. */ |
|---|
| 448 | Hash_data |
|---|
| 449 | -goal_to_hashvalue(const char *goal) |
|---|
| 450 | +goal_to_hashvalue(const signed char *goal) |
|---|
| 451 | { |
|---|
| 452 | int pos; |
|---|
| 453 | Hash_data return_value; |
|---|
| 454 | only in patch2: |
|---|
| 455 | unchanged: |
|---|
| 456 | --- engine/board.h 14 Sep 2005 18:33:20 -0000 1.25 |
|---|
| 457 | +++ engine/board.h 7 Oct 2005 07:21:22 -0000 |
|---|
| 458 | @@ -290,7 +290,7 @@ int neighbor_of_string(int pos, int str) |
|---|
| 459 | int has_neighbor(int pos, int color); |
|---|
| 460 | int same_string(int str1, int str2); |
|---|
| 461 | int adjacent_strings(int str1, int str2); |
|---|
| 462 | -void mark_string(int str, char mx[BOARDMAX], char mark); |
|---|
| 463 | +void mark_string(int str, signed char mx[BOARDMAX], signed char mark); |
|---|
| 464 | void signed_mark_string(int str, signed char mx[BOARDMAX], signed char mark); |
|---|
| 465 | int are_neighbors(int pos1, int pos2); |
|---|
| 466 | |
|---|
| 467 | @@ -392,7 +392,7 @@ int is_hoshi_point(int m, int n); |
|---|
| 468 | void draw_letter_coordinates(FILE *outfile); |
|---|
| 469 | void simple_showboard(FILE *outfile); |
|---|
| 470 | |
|---|
| 471 | -void mark_goal_in_sgf(char goal[BOARDMAX]); |
|---|
| 472 | +void mark_goal_in_sgf(signed char goal[BOARDMAX]); |
|---|
| 473 | |
|---|
| 474 | /* ================================================================ */ |
|---|
| 475 | /* assertions */ |
|---|
| 476 | only in patch2: |
|---|
| 477 | unchanged: |
|---|
| 478 | --- engine/board.c 10 Sep 2005 12:26:23 -0000 1.113 |
|---|
| 479 | +++ engine/board.c 7 Oct 2005 07:21:22 -0000 |
|---|
| 480 | @@ -2961,7 +2961,7 @@ does_capture_something(int pos, int colo |
|---|
| 481 | |
|---|
| 482 | /* For each stone in the string at pos, set mx to value mark. */ |
|---|
| 483 | void |
|---|
| 484 | -mark_string(int str, char mx[BOARDMAX], char mark) |
|---|
| 485 | +mark_string(int str, signed char mx[BOARDMAX], signed char mark) |
|---|
| 486 | { |
|---|
| 487 | int pos = str; |
|---|
| 488 | |
|---|