From f5b1d54d4373b706e3eb15ac50bed4836a1226a0 Mon Sep 17 00:00:00 2001 From: c vw Date: Wed, 6 Nov 2019 17:07:46 +0100 Subject: [PATCH] Doing VFO frequency changes via vfo_step always rounds to a multiple of the current VFO step size. --- vfo.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) 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 -- 2.45.2