Here is what is new on the Freecell Solver trunk since the release of Freecell
Solver 3.4.0 in r3316. Freecell Solver is a C library with some accompanying
command-line programs to automatically solve deals of Freecell and some
related Solitaire games -
http://fc-solve.berlios.de/ .
1. The build of measure_depth_dep_tests_order_performance.c was fixed on MS
Windows. We didn't handle the case of start_tb / end_tb instead of start_tv /
end_tv.
2. In order to prevent such problems from occuring again some portable
abstractions were created in portable_int64.h and portable_time.h .
3. Got rid of temp-fc_pro_range_solver_with_flair_support.c . It is now no
longer needed now that we have bona-fide flare support.
4. Updated
http://fc-solve.berlios.de/to-do.html as well as the shipped
TODO.txt and DONE.txt.
5. Add a modififed version of the BSDLed kazlib's self-balancing binary tree
implementation to the distribution:
http://www.kylheku.com/~kaz/kazlib.html .
It is available as a compile-time option for the FCS_RCS_CACHE_STORAGE and the
FCS_STATE_STORAGE .
6. A makefile to compile using kaz_tree was added into
scripts/automatic-build-for-982-2fc-solving/ .
7. Some fixes to the builds with some compilation options.
8. Fixed fc_solve_compare_lru_cache_keys - it was not wise to subtract
unsigneds. Also see:
http://community.livejournal.com/shlomif_tech/55657.html
9. Add /trunk/fc-solve/docs/fc-solve-rcs-mem-consumption.ods which contains a
chart for the memory consumption of Freecell Solver.
10. Bug fix for incrementally increasing the limits.
11. Add the tracemem compile-time option to trace memory consumption,
iterations' count and time.
12. Convert the scan_visited buckets to unsigned chars instead of ints. This
was done to save space.
13. Convert calculate_real_depth() and mark_as_dead_end from macros to inline
functions.
14. Optimised a little by moving underused struct elements to the the bottom
of structs.
15. Reduced the number of comparisons, created accessors and got rid of
ht_max_num_times.
16. Reverted commit r3307 - it caused a significant slowdown.
17. Add new benchmarks:
We now solve the MS 32K at 73.6936609745026s on a Pentium 4 2.4GHz (
434.230021644219 deals per second and 1,563,228.07791919 deals per hour). With
the vanilla 2.6.37 Linux kernel it gets down to 72.7685720920563s
(439.750280650254 deals per second and 1,583,101.01034091 per hour).
18. Add the INSTALL file to the site:
http://fc-solve.berlios.de/docs/distro/INSTALL.html
19. Fix bugs in free_states() the states trimming still does not work
properly.
20. Now installing the "fcs_dllexport.h" header which is required for third
party libraries to compile against libfreecell-solver.
----------------------------
Also of interest are the Ruby Kakuro solver I've started working on, which is
maintained in the same repository as fc-solve (
http://svn.berlios.de/svnroot/repos/fc-solve/kakuro-cross-sums/ ) and the
ongoing fc-solve integration into KDE's KPatience (a.k.a "kpat"):
http://lists.kde.org/?l=kde-games-devel&m=129605554121662&w=2
Regards,
Shlomi Fish
--
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
"Humanity" - Parody of Modern Life - http://shlom.in/humanity
Chuck Norris can make the statement "This statement is false" a true one.
Please reply to list if it's a mailing list post - http://shlom.in/reply .
Received on Sun Jan 30 2011 - 21:55:07 IST