* Now repeatedly try to find something we can do.
*/
while (1) {
+ int done_something = FALSE;
#ifdef SOLVER_DIAGNOSTICS
for (y = 0; y < H; y++) {
}
#endif
- int done_something = FALSE;
-
/*
* Go through the square state words, and discard any
* square state which is inconsistent with known facts
if (!workspace[(2*y+1)*W+(2*x+1)]) {
#ifdef SOLVER_DIAGNOSTICS
printf("edge check at (%d,%d): inconsistency\n", x, y);
+#endif
ret = 0;
goto cleanup;
-#endif
}
}
if (edgeand & ~edgeor) {
#ifdef SOLVER_DIAGNOSTICS
printf("square check at (%d,%d): inconsistency\n", x, y);
+#endif
ret = 0;
goto cleanup;
-#endif
}
for (d = 1; d <= 8; d += d) {
}
}
-
break;
case STRAIGHT:
/*
return NULL;
}
+static int game_can_format_as_text_now(game_params *params)
+{
+ return TRUE;
+}
+
static char *game_text_format(game_state *state)
{
return NULL;
dup_game,
free_game,
FALSE, solve_game,
- FALSE, game_text_format,
+ FALSE, game_can_format_as_text_now, game_text_format,
new_ui,
free_ui,
encode_ui,