| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Cleanup | Sebastiano Tronto | 2025-05-25 | 1 | -1/+2 |
| | | |||||
| * | Quick fix for bug | Sebastiano Tronto | 2025-05-25 | 1 | -9/+8 |
| | | |||||
| * | Do all loggin in main thread | Sebastiano Tronto | 2025-05-23 | 7 | -92/+124 |
| | | | | | | | | | | | | | | | | | | Before this committ, the solver (via the generic solution-appender routines in src/solve/solutions.h) and the H48 data generator did some logging in the worker threads, without using any locks. This was not nice, but in practice it did not cause any problem, because the log messages were rare. However, this turned out to be a problem when building to WASM, because web workers do not have access to the main JS memory, and therefore they cannot call functions from the main JS. This includes not only the callback functions for logging, but also those for polling the status of the solver (run / pause / stop). This commit fixes this at the cost or being somewhat inelegant: the solutions are not logged as they are found, but only every 500ms. | ||||
| * | Refactored checkdata | Sebastiano Tronto | 2025-05-19 | 17 | -225/+401 |
| | | | | | | | | | Relevant changes include: - Changed the signature of nissy_checkdata(). - Removed expected_distribution.h from tools; this data is now included in each solver's src/ code. - Removed distribution check for cocsep; may add back later. | ||||
| * | Refactor solver dispatch and checkdata | Sebastiano Tronto | 2025-05-18 | 13 | -246/+318 |
| | | |||||
| * | Other minor fixes | Sebastiano Tronto | 2025-05-09 | 1 | -2/+2 |
| | | |||||
| * | Added build script | Sebastiano Tronto | 2025-05-07 | 1 | -1/+1 |
| | | |||||
| * | Added stop / pause / resume solve to API | Sebastiano Tronto | 2025-04-29 | 6 | -35/+174 |
| | | |||||
| * | Give error when ( is not closed in NISS sequence | Sebastiano Tronto | 2025-04-25 | 1 | -0/+4 |
| | | |||||
| * | NISS | Sebastiano Tronto | 2025-04-25 | 11 | -101/+187 |
| | | |||||
| * | Added tests for inverse move | Sebastiano Tronto | 2025-04-23 | 1 | -6/+30 |
| | | |||||
| * | Added orientation to getcube | Sebastiano Tronto | 2025-04-23 | 3 | -14/+27 |
| | | |||||
| * | Adjusted solvers, fixed bug | Sebastiano Tronto | 2025-04-23 | 8 | -32/+51 |
| | | |||||
| * | Almost added support for wide moves, only solve missing | Sebastiano Tronto | 2025-04-23 | 3 | -48/+185 |
| | | |||||
| * | Merge branch 'extend_moves' | Sebastiano Tronto | 2025-04-22 | 2 | -2/+97 |
| |\ | |||||
| | * | Merge branch 'master' into extend_moves | Sebastiano Tronto | 2025-04-22 | 6 | -543/+235 |
| | |\ | |||||
| | * | | Added constants | Sebastiano Tronto | 2025-04-22 | 2 | -20/+115 |
| | | | | |||||
| * | | | Progress | Sebastiano Tronto | 2025-04-22 | 6 | -595/+672 |
| | | | | |||||
| * | | | Update tests for oriented_cube_t | Sebastiano Tronto | 2025-04-22 | 7 | -70/+99 |
| | | | | |||||
| * | | | Remove compose from the public API | Sebastiano Tronto | 2025-04-22 | 2 | -66/+0 |
| | |/ |/| | |||||
| * | | Updated documentation | Sebastiano Tronto | 2025-04-22 | 2 | -5/+5 |
| | | | |||||
| * | | Updated tests and added fixed =A to B32 output | Sebastiano Tronto | 2025-04-22 | 2 | -34/+22 |
| | | | |||||
| * | | Removed old scripts and updated public API | Sebastiano Tronto | 2025-04-22 | 5 | -534/+238 |
| |/ | |||||
| * | Always use unsigned char * for data buffers | Sebastiano Tronto | 2025-04-21 | 16 | -193/+203 |
| | | | | | | Before this commit I was inconsistently using one of void *, char * and uint8_t *. | ||||
| * | Merged some files, renamed another | Sebastiano Tronto | 2025-04-21 | 6 | -154/+154 |
| | | |||||
| * | Improve order of moves in NISS solutions | Sebastiano Tronto | 2025-04-20 | 1 | -18/+62 |
| | | | | | | | | | Now the side that has more moves is written first. For example: write (U L F) B instead of B (U L F) This also fixes the test on appendsolutions, which used an older version of the function's signature. | ||||
| * | Improved logging, especially for solve | Sebastiano Tronto | 2025-04-19 | 12 | -125/+114 |
| | | |||||
| * | Sped up checkdata for H48 tables | Sebastiano Tronto | 2025-04-17 | 3 | -10/+58 |
| | | |||||
| * | Small rework of optimal vs maxsols | Sebastiano Tronto | 2025-04-17 | 6 | -40/+31 |
| | | | | | | | | | | | | | | | I wanted to make the "optimal" and "maxsolutions" options mutually exclusive, but in the end I decided there is value in keeping both (e.g. for specifying a limit to the number of solutions when asking for "all" optimal"). Now optimal cannot be negative anymore, for the same reason of maxsolutions. The interface user (shell, UI) will have to take care of handling this in a way that makes sense for the user. Usually this means setting the maximum number of solutions to UINT_MAX (or a similar very high number) when the user wants "all optimal". | ||||
| * | Log solutions as they are found | Sebastiano Tronto | 2025-04-15 | 3 | -7/+18 |
| | | |||||
| * | Better logging function | Sebastiano Tronto | 2025-04-15 | 3 | -17/+22 |
| | | | | | | | | Now it is possible to provide some data together with the logging function. This is useful for example in C++, where I can now provide an arbitrary callable object as data, and a simple wrapper function that call the callable object as logging function. | ||||
| * | Fix | Sebastiano Tronto | 2025-04-14 | 1 | -1/+1 |
| | | |||||
| * | Add an opinionated C++20 adapter | Sebastiano Tronto | 2025-04-09 | 1 | -1/+1 |
| | | |||||
| * | Fixed shell; reorganized nissy.h | Sebastiano Tronto | 2025-04-08 | 1 | -93/+93 |
| | | |||||
| * | Merge branch 'master' of tronto.net:h48 | Sebastiano Tronto | 2025-04-08 | 1 | -2/+2 |
| |\ | |||||
| | * | Fix compilation errors with GCC on ARM | Sebastiano Tronto | 2025-04-02 | 1 | -2/+2 |
| | | | |||||
| * | | Some minor changes to the interface. | Sebastiano Tronto | 2025-04-08 | 8 | -43/+59 |
| |/ | | | | | | | | | - Simplified logger to accept only a string, not a variadic list of args like printf(). This can still use some improvement, but now it is easier to use from other languages. - Fixed some misuses of the logger (wrong types etc) - Renamed some constants - Fixed some typos in comments. | ||||
| * | Added dreo coordinate solver | Sebastiano Tronto | 2025-04-02 | 12 | -16/+178 |
| | | |||||
| * | Make single-use struct field anonymous | Sebastiano Tronto | 2025-04-01 | 1 | -12/+10 |
| | | |||||
| * | Make symcoord logic generic | Sebastiano Tronto | 2025-04-01 | 4 | -115/+191 |
| | | |||||
| * | Fix mismatched type in function prototype and implementation | Sebastiano Tronto | 2025-04-01 | 2 | -2/+2 |
| | | |||||
| * | Some simplification to AVX2 code | Sebastiano Tronto | 2025-04-01 | 2 | -62/+32 |
| | | | | | | Some simplification after discussion with Arhan Chaudhary (inspired by vcube). Performance looks unchanged, but at least the code is cleaner. | ||||
| * | simplified allowedmoves logic | Sebastiano Tronto | 2025-04-01 | 6 | -56/+58 |
| | | |||||
| * | Optimize genptable for coordinate solve (20x speedup) | Sebastiano Tronto | 2025-03-29 | 3 | -19/+113 |
| | | |||||
| * | DR coordinate solver | Sebastiano Tronto | 2025-03-28 | 7 | -14/+238 |
| | | |||||
| * | Reformat neon.h to keep lines <80 chars | Sebastiano Tronto | 2025-03-26 | 1 | -16/+25 |
| | | |||||
| * | Added inverse coordinate for CO | Sebastiano Tronto | 2025-03-26 | 7 | -31/+102 |
| | | | | | this is necessary for DR coordinate | ||||
| * | More safety with pointers using VLA function parameters | Sebastiano Tronto | 2025-03-25 | 18 | -147/+170 |
| | | |||||
| * | Tiny bugfix in solution writing | Sebastiano Tronto | 2025-03-25 | 2 | -18/+14 |
| | | |||||
| * | Added NISS to coord solver | Sebastiano Tronto | 2025-03-25 | 8 | -97/+274 |
| | | |||||
