https://www.swisssalary.ch/.../register-comdlg32.ocx-on-x64-win7
F7B.exe needs as input file the raw MFSK-4 stream produced by the demodulator of SA and output two ASCII-Bit files CH1.txt and CH2.txt in the same directory of the input file:
Moreover, the Octave script
T207_detect.m has been used for the check of T207/CIS-14 mode [1]: it can be freely downloaded from here (you will need GNU Octave package [2] to run the script):
https://github.com/hcab14/.../T207_detect.m
the Octave script
T207_detect_e.m also extracts the two world and bit interleaved channels:
https://yadi.sk/d/zsCD73C9DZpHPQ
I tested the demodulator on the two F7B modes
100Bd/1000 and
96Bd/500, both actively used by Ukrainian Nets; by the way,
two preliminary observations:
1) usually, the two F7B channels CH1 CH2 are T-207 secured according to the CIS-14 mode [1]. Since CIS-14 consists of two independent 5-bit MTK-2 channels (transmitted in 14-bit frames), it turns out that those F7B transmissions may carry up to four independent 5-bit channels (CH1a, CH1b, CH2a, CH2b);
2) both those F7B waveforms
have their FSK2 counterparts.
I also tested F7B.exe on the
Rockwell TE-204, a "special" time-frequency diversity FSK4 mode most commonly used by Allied Air Forces as an air-to-ground messaging system as well as in ground and naval applications.
100Bd/1000 F7B
 |
| Fig. 1 - 100Bd/1000 F7B |
100Bd/1000 F7B transmissions occupies about 3000Hz bandwidth with the four tones at -1500, -500, +500, +1500 Hz respect to the center frequency. As said above, 100Bd/1000 F7B transmissions may carry up to four independent 5-bit channels. In this regard, it's worth noting in figure 2 that - at least in this sample - the two F7B channels adopt different CIS-14 checksums: mode 20 (0312) in channel CH1 and mode 3 (3120) in channel CH2: who knows, maybe the two F7B channels carry the same data but with different checksums just to increase the redundancy of the system. Note that CIS-14 100Bd/1000 (the FSK2 counterpart) uses the checksum mode 20.
 |
| Fig. 2 - two 100Bd/1000 F7B channels, each transporting two CIS-14 channels (CH1a, CH1b, CH2a, CH2b) |
96Bd/500 F7B
 |
| Fig. 3 - 96Bd/500 F7B |
96Bd/500 F7B transmissions occupies about 1500Hz bandwidth with the four tones at -750, -250, +250, + 750 Hz respect to the center frequency. The same earlier conclusion applies: that is since CIS-14 consists of two independent channels, 96Bd/500 F7B transmissions too may carry up to four independent 5-bit channels.
I don't know if it's a mere coincidence, anyway it's interesting to note in figures 4,5 that only one channel transports data, as well as the CIS-14 96Bd/500 (the FSK2 counterpart) does: i.e., either 96Bd/500 F7B either 96Bd/500 FSK2 use only one of their two "available" channels. Both the waveforms use the CIS-14 checksum mode 20.
 |
| Fig. 4 - two 96Bd/500 F7B channels, only one of the two available CIS-14 channels is used |
 |
| Fig. 5 - CIS-14 96Bd/500 FSK2 channels, only one of the two available 5-bit channels is used |
In this transmission the two channels use different EOT signaling sequences (figure 6)
 |
| Fig. 5 |
Rockwell TE-204 FSK4
Although TE-204 does not definitely use the F7B mode, I decided to check it since regards two FSK2 channels. Indeed, TE-204 transmits the "mark" on 935 Hz for 6.67 msec period followed by a replicated 6.67 msec "mark" at 1815 Hz. Similarly, the "space" is transmitted at 1375 Hz for 6.67 msec followed by a replicated 6.67 msec "space" at 2255 Hz (figure 6). This "mode" provides an in-band frequency and time diversity function (thus the speed is the half of the measured one). As for above, from the perspective of the data-transfer, the modem works as a 75Bd/880Hz FSK2 modem.
 |
| Fig. 6 |
Well, decoding separately the two FSK2 channels (935-1375, 1815-2255) we get obviously two time-shifted similar streams (figure 7)
 |
| Fig. 7 - the two TE-204 demodulated FSK2 streams |
Demodulating it as if it were an F7B signal we get "01" sequences in channel CH1 and (expected) duplicated data in channel CH2 (figure 8)
 |
| Fig. 8 |
https://yadi.sk/d/f0U80pRg3F58iA (F7B signals)
[1]
https://i56578-swl.blogspot.com/.../redefining-t-207-checksums.html
[2]
https://www.gnu.org/software/octave/