diff --git a/src/rds.c b/src/rds.c index 1b0b894..f27556b 100644 --- a/src/rds.c +++ b/src/rds.c @@ -237,7 +237,7 @@ static void get_rds_ps_group(RDSEncoder* enc, uint16_t *blocks) { } } else { if(enc->data[enc->program].dps1_len > PS_LENGTH) { - uint8_t scroll_threshold = (enc->data[enc->program].dps_speed == 0) ? 8 : 6; + uint8_t scroll_threshold = (enc->data[enc->program].dps_speed == 0) ? 6 : 4; if(enc->state[enc->program].dynamic_ps_scroll_counter >= scroll_threshold) { switch(enc->data[enc->program].dps1_mode) { diff --git a/src/rds.h b/src/rds.h index 82ad73c..c975151 100644 --- a/src/rds.h +++ b/src/rds.h @@ -158,11 +158,11 @@ typedef struct { char dps1_text[DPS_LENGTH]; char dps1_nexttext[127]; char dps2_text[DPS_LENGTH]; - uint8_t dps1_repeat_count : 7; - uint8_t dps2_repeat_count : 7; - uint8_t static_ps_period : 4; - uint8_t dynamic_ps_period : 4; - uint8_t dynamic_ps_position : 4; + uint8_t dps1_repeat_count; + uint8_t dps2_repeat_count; + uint8_t static_ps_period; + uint8_t dynamic_ps_period; + uint8_t dynamic_ps_position; uint8_t dynamic_ps_state : 2; uint8_t dynamic_ps_scroll_counter : 7;