From: c vw Date: Wed, 6 Nov 2019 16:07:46 +0000 (+0100) Subject: Doing VFO frequency changes via vfo_step always rounds to a multiple X-Git-Url: https://git.rkrishnan.org/%5B/listings/flags/status?a=commitdiff_plain;h=f5b1d54d4373b706e3eb15ac50bed4836a1226a0;p=pihpsdr.git Doing VFO frequency changes via vfo_step always rounds to a multiple of the current VFO step size. --- diff --git a/vfo.c b/vfo.c index 6f25dac..cda7355 100644 --- a/vfo.c +++ b/vfo.c @@ -550,9 +550,9 @@ void vfo_step(int steps) { int id=active_receiver->id; if(!locked) { if(vfo[id].ctun) { - vfo[id].ctun_frequency=vfo[id].ctun_frequency+(steps*step); + vfo[id].ctun_frequency=(vfo[id].ctun_frequency/step + steps)*step; } else { - vfo[id].frequency=vfo[id].frequency+(steps*step); + vfo[id].frequency=(vfo[id].frequency/step +steps)*step; } receiver_frequency_changed(active_receiver); #ifdef INCLUDED @@ -570,9 +570,9 @@ void vfo_step(int steps) { void vfo_id_step(int id, int steps) { if(!locked) { if(vfo[id].ctun) { - vfo[id].ctun_frequency=vfo[id].ctun_frequency+(steps*step); + vfo[id].ctun_frequency=(vfo[id].ctun_frequency/step+steps)*step; } else { - vfo[id].frequency=vfo[id].frequency+(steps*step); + vfo[id].frequency=(vfo[id].frequency/step+steps)*step; } receiver_frequency_changed(active_receiver); #ifdef INCLUDED