EDACS: Display cached call source on Standard, tune group calls on assignment (#241)

* Trim trailing whitespace

* EDACS: Display cached call source on Standard

The logic in `edacs-fme.c` didn't work, in retrospect, because it would have depended on getting back-to-back messages for the same call. In practice, that is unlikely even on an idle system as system state gets displayed.

Instead, cache on the display end, for a "better" user experience.

* EDACS: Pad channel freq to "000.000000 MHz"

* EDACS: Process/tune group calls on assignment
This commit is contained in:
ilyacodes
2024-03-24 17:48:46 -04:00
committed by GitHub
parent 8d432e8b3e
commit c8d00846b1
3 changed files with 246 additions and 178 deletions

View File

@@ -210,8 +210,8 @@ typedef struct
SF_INFO *audio_in_file_info;
uint32_t rtlsdr_center_freq;
int rtlsdr_ppm_error;
int audio_in_type;
int rtlsdr_ppm_error;
int audio_in_type;
char audio_out_dev[1024];
int audio_out_fd;
int audio_out_fdR; //right channel audio for OSS hack
@@ -367,7 +367,7 @@ typedef struct
char group_in_file[1024];
char lcn_in_file[1024];
char chan_in_file[1024];
char key_in_file[1024];
char key_in_file[1024];
//end import filenames
//reverse mute
@@ -454,7 +454,7 @@ typedef struct
short s_ru[160*6]; //single sample right
short s_l4u[4][160*6]; //quad sample for up to a P25p2 4V
short s_r4u[4][160*6]; //quad sample for up to a P25p2 4V
//end
//end
int audio_out_idx;
int audio_out_idx2;
int audio_out_idxR;
@@ -616,7 +616,7 @@ typedef struct
char dmr_cach_fragment[4][17]; //unsure of size, will need to check/verify
int dmr_cach_counter; //counter for dmr_cach_fragments 0-3; not sure if needed yet.
//dmr talker alias new/fixed stuff
uint8_t dmr_alias_format[2]; //per slot
uint8_t dmr_alias_len[2]; //per slot
@@ -1188,7 +1188,7 @@ bool crc8_ok(uint8_t bits[], unsigned int len);
//modified CRC functions for SB/RC
uint8_t crc7(uint8_t bits[], unsigned int len);
uint8_t crc3(uint8_t bits[], unsigned int len);
uint8_t crc4(uint8_t bits[], unsigned int len);
uint8_t crc4(uint8_t bits[], unsigned int len);
//LFSR and LFSRP code courtesy of https://github.com/mattames/LFSR/
void LFSR(dsd_state * state);