# HG changeset patch # User Mychaela Falconia # Date 1730098353 0 # Node ID 23555b9a1c2089b6cba160d0ead5d5cd527dd9a9 # Parent e93a11f44e6f9d5a29272d66161a72cb3ddab675 fc-mcsi-rxtx: implement pcm-fill command diff -r e93a11f44e6f -r 23555b9a1c20 sw/mcsi-rxtx/tx_func.c --- a/sw/mcsi-rxtx/tx_func.c Mon Oct 28 06:34:42 2024 +0000 +++ b/sw/mcsi-rxtx/tx_func.c Mon Oct 28 06:52:33 2024 +0000 @@ -4,6 +4,7 @@ */ #include +#include #include #include #include @@ -46,3 +47,26 @@ do_idle_fill(tx_samples); emit_uart_output(tx_samples); } + +void +cmd_pcm_fill(argc, argv) + char **argv; +{ + u_long val; + char *endp; + + if (argc < 2) { + printf("%04x\n", pcm_fill_word); + return; + } + if (!isxdigit(argv[1][0])) { +inv: printf("error: pcm-fill argument is not a valid hex word\n"); + return; + } + val = strtoul(argv[1], &endp, 16); + if (*endp) + goto inv; + if (val > 0xFFFF) + goto inv; + pcm_fill_word = val; +} diff -r e93a11f44e6f -r 23555b9a1c20 sw/mcsi-rxtx/usercmd.c --- a/sw/mcsi-rxtx/usercmd.c Mon Oct 28 06:34:42 2024 +0000 +++ b/sw/mcsi-rxtx/usercmd.c Mon Oct 28 06:52:33 2024 +0000 @@ -11,6 +11,7 @@ extern char usercmd[]; +extern void cmd_pcm_fill(); extern void cmd_print_rx(); static void @@ -27,6 +28,7 @@ void (*func)(); } cmdtab[] = { {"exit", 0, 0, cmd_exit}, + {"pcm-fill", 0, 1, cmd_pcm_fill}, {"print-rx", 0, 0, cmd_print_rx}, {"quit", 0, 0, cmd_exit}, {0, 0, 0, 0}