feat(dmr): decode CACH and slot type

This commit is contained in:
2026-07-14 18:46:49 +03:00
parent 3fcf737685
commit 23596d0565
5 changed files with 367 additions and 6 deletions
+8 -3
View File
@@ -3587,14 +3587,19 @@ end;
function TMainForm.DMRStatusText: string;
var
S: TDMRStatus;
Inv: string;
Inv, Details: string;
begin
if not FController.GetDMRStatus(S) then Exit('DMR unavailable');
if not S.Enabled then Exit('DMR off');
if not S.Synced then Exit(Format('DMR sync... %.3f', [S.SignalRMS]));
if S.Inverted then Inv := ' INV' else Inv := '';
Result := Format('DMR %s%s #%d',
[TDMRDecoder.SyncKindName(S.SyncKind), Inv, S.SyncCount]);
Details := '';
if S.CACHValid then Details := Format(' TS%d', [S.Slot + 1]);
if S.SlotTypeValid then
Details := Details + Format(' CC%d/DT%d', [S.ColorCode, S.DataType]);
Result := Format('DMR %s%s%s #%d',
[TDMRDecoder.SyncKindName(S.SyncKind), Details, Inv,
S.SyncCount]);
end;
procedure TMainForm.UpdateStatusField7;