#ifndef STEP_6_HPP #define STEP_6_HPP #include "wires_puzzle.h" #include "drivers/wires.h" #include "drivers/bottom_half.h" static const char *STEP6_TAG = "step6"; static uint8_t cut_wires = 0; static void correct_wire_task(void *arg); void step6(void) { get_cut_wires(); clear_all_pressed_released(); WireColor wires[NUM_WIRES]; load_wires_from_sd_card(wires); bool solution[NUM_WIRES] = {0}; solve_wires(wires, solution); while (1) { uint8_t new_cut_wires = get_cut_wires(); uint8_t just_cut_wires = new_cut_wires & ~cut_wires; cut_wires |= new_cut_wires; for (int i = 0; i < NUM_WIRES; i++) { if (just_cut_wires & (1<