mirror of
https://github.com/lwvmobile/dsd-fme.git
synced 2026-11-14 17:57:28 -05:00
Fix and Consolidate Date and Time Functions (WIP); #255
This commit is contained in:
69
src/dmr_ms.c
69
src/dmr_ms.c
@@ -13,6 +13,8 @@
|
||||
void dmrMS (dsd_opts * opts, dsd_state * state)
|
||||
{
|
||||
|
||||
char * timestr = getTimeC();
|
||||
|
||||
int i, j, dibit;
|
||||
char ambe_fr[4][24];
|
||||
char ambe_fr2[4][24];
|
||||
@@ -55,22 +57,6 @@ void dmrMS (dsd_opts * opts, dsd_state * state)
|
||||
uint8_t dummy_bits[196];
|
||||
memset (dummy_bits, 0, sizeof (dummy_bits));
|
||||
|
||||
//add time to mirror printFrameSync
|
||||
char * getTime(void) //get pretty hh:mm:ss timestamp
|
||||
{
|
||||
time_t t = time(NULL);
|
||||
|
||||
char * curr;
|
||||
char * stamp = asctime(localtime( & t));
|
||||
|
||||
curr = strtok(stamp, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
|
||||
return curr;
|
||||
}
|
||||
|
||||
vc = 2;
|
||||
|
||||
//Hardset variables for MS/Mono
|
||||
@@ -187,7 +173,7 @@ void dmrMS (dsd_opts * opts, dsd_state * state)
|
||||
if ( strcmp (sync, DMR_RC_DATA_SYNC) == 0)
|
||||
{
|
||||
state->dmr_ms_rc = 1;
|
||||
fprintf (stderr, "%s ", getTime());
|
||||
fprintf (stderr, "%s ", timestr);
|
||||
if (opts->inverted_dmr == 0)
|
||||
{
|
||||
fprintf (stderr,"Sync: +DMR MS/DM MODE/MONO ");
|
||||
@@ -387,13 +373,17 @@ void dmrMS (dsd_opts * opts, dsd_state * state)
|
||||
state->dmr_ms_mode = 0;
|
||||
state->dmr_ms_rc = 0;
|
||||
state->directmode = 0; //flag off
|
||||
|
||||
|
||||
free(timestr);
|
||||
|
||||
}
|
||||
|
||||
//collect buffered 1st half and get 2nd half voice payload and then jump to full MS Voice decoding.
|
||||
void dmrMSBootstrap (dsd_opts * opts, dsd_state * state)
|
||||
{
|
||||
|
||||
char * timestr = getTimeC();
|
||||
|
||||
int i, dibit;
|
||||
int *dibit_p;
|
||||
|
||||
@@ -417,22 +407,6 @@ void dmrMSBootstrap (dsd_opts * opts, dsd_state * state)
|
||||
char cachdata[25];
|
||||
UNUSED(cachdata);
|
||||
|
||||
//add time to mirror sync
|
||||
char * getTime(void) //get pretty hh:mm:ss timestamp
|
||||
{
|
||||
time_t t = time(NULL);
|
||||
|
||||
char * curr;
|
||||
char * stamp = asctime(localtime( & t));
|
||||
|
||||
curr = strtok(stamp, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
|
||||
return curr;
|
||||
}
|
||||
|
||||
state->dmrburstL = 16;
|
||||
state->currentslot = 0; //force to slot 0
|
||||
|
||||
@@ -568,7 +542,7 @@ void dmrMSBootstrap (dsd_opts * opts, dsd_state * state)
|
||||
fclose (pFile);
|
||||
}
|
||||
|
||||
fprintf (stderr, "%s ", getTime());
|
||||
fprintf (stderr, "%s ", timestr);
|
||||
if (opts->inverted_dmr == 0)
|
||||
{
|
||||
fprintf (stderr,"Sync: +DMR MS/DM MODE/MONO ");
|
||||
@@ -644,6 +618,7 @@ void dmrMSBootstrap (dsd_opts * opts, dsd_state * state)
|
||||
|
||||
//errors due to skipping other slot
|
||||
// cach_err = dmr_cach (opts, state, cachdata);
|
||||
free (timestr);
|
||||
|
||||
skipDibit (opts, state, 144); //skip to next TDMA slot
|
||||
dmrMS (opts, state); //bootstrap into full TDMA frame
|
||||
@@ -653,27 +628,13 @@ void dmrMSBootstrap (dsd_opts * opts, dsd_state * state)
|
||||
//simplied to a simple data collector, and then passed on to dmr_data_sync for the usual processing
|
||||
void dmrMSData (dsd_opts * opts, dsd_state * state)
|
||||
{
|
||||
|
||||
char * timestr = getTimeC();
|
||||
|
||||
int i;
|
||||
int dibit;
|
||||
int *dibit_p;
|
||||
|
||||
//add time to mirror sync
|
||||
char * getTime(void) //get pretty hh:mm:ss timestamp
|
||||
{
|
||||
time_t t = time(NULL);
|
||||
|
||||
char * curr;
|
||||
char * stamp = asctime(localtime( & t));
|
||||
|
||||
curr = strtok(stamp, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
curr = strtok(NULL, " ");
|
||||
|
||||
return curr;
|
||||
}
|
||||
|
||||
|
||||
//CACH + First Half Payload + Sync = 12 + 54 + 24
|
||||
dibit_p = state->dmr_payload_p - 90;
|
||||
for (i = 0; i < 90; i++) //90
|
||||
@@ -691,7 +652,7 @@ void dmrMSData (dsd_opts * opts, dsd_state * state)
|
||||
state->dmr_stereo_payload[i+90] = dibit;
|
||||
}
|
||||
|
||||
fprintf (stderr, "%s ", getTime());
|
||||
fprintf (stderr, "%s ", timestr);
|
||||
if (opts->inverted_dmr == 0)
|
||||
{
|
||||
fprintf (stderr,"Sync: +DMR MS/DM MODE/MONO ");
|
||||
@@ -728,4 +689,6 @@ void dmrMSData (dsd_opts * opts, dsd_state * state)
|
||||
state->dmr_stereo_payload[i+66] = 1; ////set to one so first frame will fail intentionally instead of zero fill
|
||||
}
|
||||
|
||||
free (timestr);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user