From b726cc8faf2f0f3258a248d71e47220de39b1887 Mon Sep 17 00:00:00 2001 From: lwvmobile Date: Sat, 23 Dec 2023 13:45:27 -0500 Subject: [PATCH] DMR - Fix UDT Dialer Digit Values; --- src/dmr_block.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/dmr_block.c b/src/dmr_block.c index fdadfda..80e72e6 100644 --- a/src/dmr_block.c +++ b/src/dmr_block.c @@ -508,7 +508,13 @@ void dmr_udt_decoder (dsd_opts * opts, dsd_state * state, uint8_t * block_bytes, fprintf (stderr, "Dialer BCD: "); for (i = 0; i < end; i++) { - fprintf (stderr, "%d", (uint8_t)ConvertBitIntoBytes(&cs_bits[(i*4)+96], 4)); + //dialer digits 7.2.9 + int digit = (int)ConvertBitIntoBytes(&cs_bits[(i*4)+96], 4); + if (digit < 10) fprintf (stderr, "%d", digit); //numbers 0-9 + else if (digit == 10) fprintf (stderr, "*"); //asterisk/star + else if (digit == 11) fprintf (stderr, "#"); //pound/hash + else if (digit == 15) fprintf (stderr, " "); //null character + else fprintf (stderr, "R:%X", digit); //reserved values on 12,13, and 14 } } else if (udt_format2 == 0x03) //ISO7 format