diff --git a/patch/enable_both_slots_p2_trunking.patch b/patch/enable_both_slots_p2_trunking.patch new file mode 100644 index 0000000..a27fe34 --- /dev/null +++ b/patch/enable_both_slots_p2_trunking.patch @@ -0,0 +1,274 @@ +diff --git a/src/p25p2_vpdu.c b/src/p25p2_vpdu.c +index 5155bd7..3cf0480 100644 +--- a/src/p25p2_vpdu.c ++++ b/src/p25p2_vpdu.c +@@ -155,16 +155,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (channel & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (channel & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -255,16 +255,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (channel & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (channel & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -386,16 +386,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (tunable_chan & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (tunable_chan & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -511,16 +511,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (channel & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (channel & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -642,16 +642,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (channel & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (channel & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + } + + } +@@ -748,16 +748,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (channel & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (channel & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + } + + } +@@ -918,16 +918,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (tunable_chan & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (tunable_chan & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -1109,16 +1109,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (tunable_chan & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (tunable_chan & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -1245,16 +1245,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (tunable_chan & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (tunable_chan & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } + } +@@ -1374,16 +1374,16 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon + + //shim fix to stutter/lag by only enabling slot on the target/channel we tuned to + //this will only occur in realtime tuning, not not required .bin or .wav playback +- if (channelt & 1) //VCH1 +- { +- opts->slot1_on = 0; +- opts->slot2_on = 1; +- } +- else //VCH0 +- { +- opts->slot1_on = 1; +- opts->slot2_on = 0; +- } ++ // if (channelt & 1) //VCH1 ++ // { ++ // opts->slot1_on = 0; ++ // opts->slot2_on = 1; ++ // } ++ // else //VCH0 ++ // { ++ // opts->slot1_on = 1; ++ // opts->slot2_on = 0; ++ // } + + } +