From ad592cdc59a0d09fbfcf08aab1d0d69a0f0853f1 Mon Sep 17 00:00:00 2001 From: axpe95 Date: Fri, 9 Feb 2024 16:19:42 +0200 Subject: [PATCH] fix nxdn scramber roll on facch1 after superframe --- src/nxdn_frame.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/nxdn_frame.c b/src/nxdn_frame.c index 4650ec2..8408351 100644 --- a/src/nxdn_frame.c +++ b/src/nxdn_frame.c @@ -419,6 +419,11 @@ void nxdn_frame (dsd_opts * opts, dsd_state * state) //roll the voice scrambler LFSR here if key available to advance seed (usually just needed on NXDN96) if (state->nxdn_cipher_type == 0x1 && state->R != 0) { + if (state->payload_miN == 0) + { + state->payload_miN = state->R; + } + char ambe_temp[49] = {0}; char ambe_d[49] = {0}; for (int i = 0; i < 4; i++) @@ -436,6 +441,11 @@ void nxdn_frame (dsd_opts * opts, dsd_state * state) //roll the voice scrambler LFSR here if key available to advance seed -- half rotation on a facch steal if (state->nxdn_cipher_type == 0x1 && state->R != 0) { + if (state->payload_miN == 0) + { + state->payload_miN = state->R; + } + char ambe_temp[49] = {0}; char ambe_d[49] = {0}; for (int i = 0; i < 2; i++)