From cd866d68cf1bf6ea928cc48a4f2b753c0b1baa6f Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Tue, 22 Apr 2025 11:14:06 +0200 Subject: Updated tests and added fixed =A to B32 output --- src/core/cube.h | 34 +++++++++++----------------------- src/nissy.c | 22 +++++++++++----------- 2 files changed, 22 insertions(+), 34 deletions(-) (limited to 'src') diff --git a/src/core/cube.h b/src/core/cube.h index 798c99c..a045e55 100644 --- a/src/core/cube.h +++ b/src/core/cube.h @@ -178,33 +178,18 @@ getcube(int64_t ep, int64_t eo, int64_t cp, int64_t co) /******************************************************************************/ -STATIC cube_t readcube(const char *, const char *); -STATIC int64_t writecube(const char *, cube_t, size_t n, char [n]); +STATIC cube_t readcube(const char *); +STATIC int64_t writecube(cube_t, size_t n, char [n]); STATIC uint8_t readco(const char *); STATIC uint8_t readcp(const char *); STATIC uint8_t readeo(const char *); STATIC uint8_t readep(const char *); -STATIC cube_t readcube_B32(const char *); -STATIC int64_t writecube_B32(cube_t, size_t n, char [n]); - STATIC uint8_t b32toedge(char); STATIC uint8_t b32tocorner(char); STATIC char edgetob32(uint8_t); STATIC char cornertob32(uint8_t); -STATIC cube_t -readcube(const char *format, const char *buf) -{ - return readcube_B32(buf); -} - -STATIC int64_t -writecube(const char *format, cube_t cube, size_t buf_size, char buf[buf_size]) -{ - return writecube_B32(cube, buf_size, buf); -} - STATIC uint8_t readco(const char *str) { @@ -259,7 +244,7 @@ readep(const char *str) } STATIC cube_t -readcube_B32(const char *buf) +readcube(const char *buf) { int i; uint8_t c[8], e[12]; @@ -267,7 +252,7 @@ readcube_B32(const char *buf) for (i = 0; i < 8; i++) { c[i] = b32tocorner(buf[i]); if (c[i] == UINT8_ERROR) { - LOG("Error reading B32 corner %d ", i); + LOG("Error reading corner %d ", i); if (buf[i] == 0) { LOG("(string terminated early)\n"); } else { @@ -278,7 +263,7 @@ readcube_B32(const char *buf) } if (buf[8] != '=') { - LOG("Error reading B32 separator: a single '=' " + LOG("Error reading separator: a single '=' " "must be used to separate edges and corners\n"); return ZERO_CUBE; } @@ -286,7 +271,7 @@ readcube_B32(const char *buf) for (i = 0; i < 12; i++) { e[i] = b32toedge(buf[i+9]); if (e[i] == UINT8_ERROR) { - LOG("Error reading B32 edge %d ", i); + LOG("Error reading edge %d ", i); if (buf[i+9] == 0) { LOG("(string terminated early)\n"); } else { @@ -300,7 +285,7 @@ readcube_B32(const char *buf) } STATIC int64_t -writecube_B32(cube_t cube, size_t buf_size, char buf[buf_size]) +writecube(cube_t cube, size_t buf_size, char buf[buf_size]) { int i; uint8_t corner[8], edge[12]; @@ -322,7 +307,10 @@ writecube_B32(cube_t cube, size_t buf_size, char buf[buf_size]) for (i = 0; i < 12; i++) buf[i+9] = edgetob32(edge[i]); - buf[21] = '\0'; +/* TODO */ + buf[21] = '='; + buf[22] = 'A'; + buf[23] = '\0'; return NISSY_OK; } diff --git a/src/nissy.c b/src/nissy.c index fb3cc11..8aa0334 100644 --- a/src/nissy.c +++ b/src/nissy.c @@ -119,7 +119,7 @@ distribution_equal( STATIC long long write_result(cube_t cube, char result[static NISSY_SIZE_CUBE]) { - writecube("B32", cube, NISSY_SIZE_CUBE, result); + writecube(cube, NISSY_SIZE_CUBE, result); if (!issolvable(cube)) { LOG("Warning: resulting cube is not solvable\n"); @@ -151,7 +151,7 @@ nissy_compose( cube_t c, p, res; long long err; - c = readcube("B32", cube); + c = readcube(cube); if (!isconsistent(c)) { LOG("[compose] Error: the given cube is invalid\n"); @@ -159,7 +159,7 @@ nissy_compose( goto nissy_compose_error; } - p = readcube("B32", permutation); + p = readcube(permutation); if (!isconsistent(p)) { LOG("[compose] Error: given permutation is invalid\n"); @@ -178,7 +178,7 @@ nissy_compose( return write_result(res, result); nissy_compose_error: - writecube("B32", ZERO_CUBE, NISSY_SIZE_CUBE, result); + writecube(ZERO_CUBE, NISSY_SIZE_CUBE, result); return err; } @@ -191,7 +191,7 @@ nissy_inverse( cube_t c, res; long long err; - c = readcube("B32", cube); + c = readcube(cube); if (iserror(c)) { LOG("[inverse] Error: the given cube is invalid\n"); @@ -210,7 +210,7 @@ nissy_inverse( return write_result(res, result); nissy_inverse_error: - writecube("B32", ZERO_CUBE, NISSY_SIZE_CUBE, result); + writecube(ZERO_CUBE, NISSY_SIZE_CUBE, result); return err; } @@ -230,7 +230,7 @@ nissy_applymoves( goto nissy_applymoves_error; } - c = readcube("B32", cube); + c = readcube(cube); if (!isconsistent(c)) { LOG("[applymoves] Error: given cube is invalid\n"); @@ -249,7 +249,7 @@ nissy_applymoves( return write_result(res, result); nissy_applymoves_error: - writecube("B32", ZERO_CUBE, NISSY_SIZE_CUBE, result); + writecube(ZERO_CUBE, NISSY_SIZE_CUBE, result); return err; } @@ -263,7 +263,7 @@ nissy_applytrans( cube_t c, res; long long err; - c = readcube("B32", cube); + c = readcube(cube); if (!isconsistent(c)) { LOG("[applytrans] Error: given cube is invalid\n"); @@ -282,7 +282,7 @@ nissy_applytrans( return write_result(res, result); nissy_applytrans_error: - writecube("B32", ZERO_CUBE, NISSY_SIZE_CUBE, result); + writecube(ZERO_CUBE, NISSY_SIZE_CUBE, result); return err; } @@ -507,7 +507,7 @@ nissy_solve( return NISSY_ERROR_NULL_POINTER; } - c = readcube_B32(cube); + c = readcube(cube); if (!isconsistent(c)) { LOG("[solve] Error: cube is invalid\n"); -- cgit v1.3