Say how the transmit pane works and what would make it exact

The pump is paced off the clock. XMMT.ocx has a TxBufLen property and answers
when it is asked, so the bridge could report what the engine still holds and
make the red text exact, but the engine does not start on this machine and the
property could not be watched while a message was going out.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RoGtneMQaz4M9w7Kk49AVD
This commit is contained in:
2026-09-01 05:25:49 +00:00
parent f69c630ba1
commit 9d0af06686
2 changed files with 14 additions and 3 deletions

View File

@@ -47,6 +47,7 @@ scorer: red for a dupe, green for a new multiplier, blue for points.
| Contests | CQ WW (CW, SSB, RTTY), CQ WPX (CW, SSB, RTTY), WAE (CW, SSB, RTTY), ARRL DX, IARU HF, Sweepstakes, RTTY Roundup, NAQP, OK/OM DX (CW), YOTA, IOTA, EU DX Contest, CQ 160, ARRL 10M, REF, Ukrainian DX, Russian DX RTTY, RDAC, YO DX HF, Oceania DX, All Asian, SARTG RTTY, BARTG Sprint, Mexico RTTY, IARU Region 1 Field Day, general logging, and user-defined `.udc` contests | | Contests | CQ WW (CW, SSB, RTTY), CQ WPX (CW, SSB, RTTY), WAE (CW, SSB, RTTY), ARRL DX, IARU HF, Sweepstakes, RTTY Roundup, NAQP, OK/OM DX (CW), YOTA, IOTA, EU DX Contest, CQ 160, ARRL 10M, REF, Ukrainian DX, Russian DX RTTY, RDAC, YO DX HF, Oceania DX, All Asian, SARTG RTTY, BARTG Sprint, Mexico RTTY, IARU Region 1 Field Day, general logging, and user-defined `.udc` contests |
| Log | N1MM `.s3db`, Cabrillo 3.0 out, ADIF in and out | | Log | N1MM `.s3db`, Cabrillo 3.0 out, ADIF in and out |
| While typing | dupe check, multiplier check, points, country and zone from the country file, exchange filled from a call history file | | While typing | dupe check, multiplier check, points, country and zone from the country file, exchange filled from a call history file |
| While transmitting | a digital message is held in the transmit pane and fed to the engine a character at a time, so what has not gone out can still be rewritten; what has gone out is red, and the engine idles when it catches up with the cursor |
| Windows | entry, log, check, bandmap, available mults and Qs, score summary, grey line, telnet, digital interface | | Windows | entry, log, check, bandmap, available mults and Qs, score summary, grey line, telnet, digital interface |
| Editing | double-click a cell in the log, or open the whole contact with Ctrl+Y; Delete removes it. All of it goes out to the other stations | | Editing | double-click a cell in the log, or open the whole contact with Ctrl+Y; Delete removes it. All of it goes out to the other stations |
| Radio | one or two radios over hamlib `rigctld`, split, reconnecting on its own | | Radio | one or two radios over hamlib `rigctld`, split, reconnecting on its own |

View File

@@ -39,9 +39,19 @@ hardware TNCs — are not here either, though `DigitalEngine` is the place to ad
them. them.
The receive pane has been driven with a stand-in bridge that prints prepared The receive pane has been driven with a stand-in bridge that prints prepared
text, which is how the printing, the colouring and the Letters/Figs box were text, which is how the printing, the colouring, the Letters/Figs box and the
checked. Nothing has been decoded from a real signal: this machine has no sound type-ahead transmit pane were checked. Nothing has been decoded from a real
card. signal and nothing has gone on the air: this machine has no sound card, and
MMTTY does not start on it.
**What paces the type-ahead pump.** It counts character times off the clock at
the baud rate in the digital settings, so it runs a little behind the engine
rather than ahead of it. The engine can be asked instead: `XMMT.ocx` has a
`TxBufLen` property, and a probe against the control shows it answers, though
what it answers while a message is going out could not be measured here because
the engine will not start. Reporting it from the bridge would make the red text
exact and let the pump keep the engine's buffer full rather than leaving a gap
between characters.
**Voice keying.** `MessageSender` was written to cover a voice keyer playing a **Voice keying.** `MessageSender` was written to cover a voice keyer playing a
recording, and nothing implements it. Each operator's recordings folder is recording, and nothing implements it. Each operator's recordings folder is