From 4f61cd3a11b5ed37d908dc5f831652fa1c1a4e4f Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Sat, 23 Jun 2018 14:43:39 -0700 Subject: [PATCH] TMXR: Properly adjust speed delays when the factor is dynamically changed --- sim_tmxr.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sim_tmxr.c b/sim_tmxr.c index 3d974e67..8c2e6dd6 100644 --- a/sim_tmxr.c +++ b/sim_tmxr.c @@ -2498,8 +2498,14 @@ if (*cptr == '*') { if (r != SCPE_OK) return r; lp->bpsfactor = bpsfactor; - if (speed == cptr) /* just changing bps factor? */ + if (speed == cptr) { /* just changing bps factor? */ + char speedbps[16]; + + sprintf (speedbps, "%d", lp->rxbps); + lp->rxdeltausecs = (uint32)(_tmln_speed_delta (speedbps) / lp->bpsfactor); + lp->txdeltausecs = lp->rxdeltausecs; return SCPE_OK; /* Done now */ + } } lp->rxbps = rxbps; /* use supplied speed */ if ((lp->serport) && (lp->bpsfactor != 0.0))