From d65ce8e86b517ef3f7d48cf5ded1101444e05b2b Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Tue, 31 Oct 2023 19:17:42 +0100 Subject: Reorganized documentation --- src/_constants.c | 72 +++++++++++++++++++++++++++++++++++++++++++++ src/cube.h | 90 ++------------------------------------------------------ 2 files changed, 74 insertions(+), 88 deletions(-) (limited to 'src') diff --git a/src/_constants.c b/src/_constants.c index 0070990..a6b19fe 100644 --- a/src/_constants.c +++ b/src/_constants.c @@ -1,3 +1,75 @@ +#define U 0U +#define U2 1U +#define U3 2U +#define D 3U +#define D2 4U +#define D3 5U +#define R 6U +#define R2 7U +#define R3 8U +#define L 9U +#define L2 10U +#define L3 11U +#define F 12U +#define F2 13U +#define F3 14U +#define B 15U +#define B2 16U +#define B3 17U + +#define UFr 0 +#define ULr 1 +#define UBr 2 +#define URr 3 +#define DFr 4 +#define DLr 5 +#define DBr 6 +#define DRr 7 +#define RUr 8 +#define RFr 9 +#define RDr 10 +#define RBr 11 +#define LUr 12 +#define LFr 13 +#define LDr 14 +#define LBr 15 +#define FUr 16 +#define FRr 17 +#define FDr 18 +#define FLr 19 +#define BUr 20 +#define BRr 21 +#define BDr 22 +#define BLr 23 + +#define UFm 24 +#define ULm 25 +#define UBm 26 +#define URm 27 +#define DFm 28 +#define DLm 29 +#define DBm 30 +#define DRm 31 +#define RUm 32 +#define RFm 33 +#define RDm 34 +#define RBm 35 +#define LUm 36 +#define LFm 37 +#define LDm 38 +#define LBm 39 +#define FUm 40 +#define FRm 41 +#define FDm 42 +#define FLm 43 +#define BUm 44 +#define BRm 45 +#define BDm 46 +#define BLm 47 + +#define errormove 99U +#define errortrans 99U + #define _c_ufr 0U #define _c_ubl 1U #define _c_dfl 2U diff --git a/src/cube.h b/src/cube.h index 43d9172..fd0d3e8 100644 --- a/src/cube.h +++ b/src/cube.h @@ -1,6 +1,3 @@ -/* Types *********************************************************************/ - -/* See doc/CUBE_INTERNAL.md for a description of the cube format */ typedef struct { uint8_t c[16]; uint8_t e[16]; @@ -14,8 +11,6 @@ typedef cube_arr_t cube_t; typedef uint8_t move_t; typedef uint8_t trans_t; -/* Functions *****************************************************************/ - int readmoves(char *, move_t *); void writemoves(move_t *, int, char *); trans_t readtrans(char *); @@ -24,11 +19,9 @@ void writetrans(trans_t, char *); move_t inverse_move(move_t); trans_t inverse_trans(trans_t); -/* Not all formats are supported for both read and write. */ -/* See doc/CUBE_TEXT.md for details. */ typedef enum {H48, SRC} format_t; -cube_t readcube(format_t, char *); -void writecube(format_t, cube_t, char *); +cube_t readcube(format_t, char *); /* Supports: H48 */ +void writecube(format_t, cube_t, char *); /* Supports: H48, SRC */ cube_t solvedcube(void); cube_t zerocube(void); @@ -41,82 +34,3 @@ cube_t move(cube_t, move_t); cube_t inverse(cube_t); cube_t compose(cube_t, cube_t); cube_t transform(cube_t, trans_t); - -/* Constants for moves and transformations ***********************************/ - -/* Standard moves */ -#define U 0U -#define U2 1U -#define U3 2U -#define D 3U -#define D2 4U -#define D3 5U -#define R 6U -#define R2 7U -#define R3 8U -#define L 9U -#define L2 10U -#define L3 11U -#define F 12U -#define F2 13U -#define F3 14U -#define B 15U -#define B2 16U -#define B3 17U - -/* Regular transformations (rotations) */ -#define UFr 0 -#define ULr 1 -#define UBr 2 -#define URr 3 -#define DFr 4 -#define DLr 5 -#define DBr 6 -#define DRr 7 -#define RUr 8 -#define RFr 9 -#define RDr 10 -#define RBr 11 -#define LUr 12 -#define LFr 13 -#define LDr 14 -#define LBr 15 -#define FUr 16 -#define FRr 17 -#define FDr 18 -#define FLr 19 -#define BUr 20 -#define BRr 21 -#define BDr 22 -#define BLr 23 - -/* Mirrored transformations */ -#define UFm 24 -#define ULm 25 -#define UBm 26 -#define URm 27 -#define DFm 28 -#define DLm 29 -#define DBm 30 -#define DRm 31 -#define RUm 32 -#define RFm 33 -#define RDm 34 -#define RBm 35 -#define LUm 36 -#define LFm 37 -#define LDm 38 -#define LBm 39 -#define FUm 40 -#define FRm 41 -#define FDm 42 -#define FLm 43 -#define BUm 44 -#define BRm 45 -#define BDm 46 -#define BLm 47 - -/* Errors */ -#define errormove 99U -#define errortrans 99U - -- cgit v1.3