From 523f4c90a1e0558200c411f9827f8190aa761f02 Mon Sep 17 00:00:00 2001 From: "adam@algroup.co.uk" Date: Tue, 1 Sep 2009 23:17:57 +0000 Subject: [PATCH] amp command - amplify sample peaks --- winsrc/command.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/winsrc/command.cpp b/winsrc/command.cpp index 929cff07..c1b3e372 100644 --- a/winsrc/command.cpp +++ b/winsrc/command.cpp @@ -1808,6 +1808,40 @@ static void CmdNorm(char *str) RepaintGraphWindow(); } +static void CmdAmp(char *str) +{ + int i, rising, falling; + int max = INT_MIN, min = INT_MAX; + for(i = 10; i < GraphTraceLen; i++) { + if(GraphBuffer[i] > max) { + max = GraphBuffer[i]; + } + if(GraphBuffer[i] < min) { + min = GraphBuffer[i]; + } + } + if(max != min) { + rising= falling= 0; + for(i = 0; i < GraphTraceLen; i++) { + if(GraphBuffer[i+1] < GraphBuffer[i]) { + if(rising) { + GraphBuffer[i]= max; + rising= 0; + } + falling= 1; + } + if(GraphBuffer[i+1] > GraphBuffer[i]) { + if(falling) { + GraphBuffer[i]= min; + falling= 0; + } + rising= 1; + } + } + } + RepaintGraphWindow(); +} + static void CmdDec(char *str) { int i; @@ -2794,6 +2828,7 @@ static struct { int offline; // 1 if the command can be used when in offline mode char *docString; } CommandTable[] = { + {"amp", CmdAmp, 1, "Amplify peaks"}, {"askdemod", Cmdaskdemod, 1, " <0|1> -- Attempt to demodulate simple ASK tags"}, {"autocorr", CmdAutoCorr, 1, " -- Autocorrelation over window"}, {"bitsamples", CmdBitsamples, 0, "Get raw samples as bitstring"}, -- 2.39.2