#include #define UART_NUM_0 0 static const uint8_t *input; static size_t input_size, input_offset; static char uart_output[4096]; static size_t uart_output_length; static unsigned publications; static esp_err_t uart_flush_input(int uart) { assert(uart==0); ++publications; return ESP_OK; } static int uart_read_bytes(int uart, void *out, size_t n, unsigned wait) { assert(uart==0 && n==1 && wait==portMAX_DELAY && !lock_depth); if (input_offset==input_size) return -1; *(uint8_t *)out=input[input_offset++]; return 1; } static int capture_printf(const char *format, ...) { va_list ap; va_start(ap,format); int n=vsnprintf(uart_output+uart_output_length, sizeof(uart_output)-uart_output_length,format,ap); va_end(ap); assert(n>=0 && (size_t)n