WinMSDSP 2000 Manual



1. Introduction

2. System requirements

3. How to register

4. License agreement

5. First start

6. Keyboard shortcuts

7. Possible problems

8. Dialogs:

8.1. Main dialog

8.2. Options dialog

8.3. Colors dialog

8.4. Decode dialog

8.5. Mixer dialog

9. PTT circuit

10. How to upgrade to new version

11. How to uninstall

12. Technical support


WinMSDSP is a program to receive and transmit high speed CW. It emulates a tape recorder with variable speed playback; high speed CW may be recorded and then played back at a slower speed. WinMSDSP also provides for transmission of high speed CW. It works the same as the DOS version with many new features: full duplex with sound cards that support full duplex, analyze and decode CW, etc.

Program can be downloaded on authors homepage If from some reason authors homepage has moved, look at for new homepage. On the same homepage you can find the latest version of the program and help files. Also there will be other notes and news about WinMSDSP.

Many thanks to alpha testers team: W8WN, VE5UF, WB5APD, KO0U, W5HUQ, NJ0M, K0XP and N1BUG. Also thanks to OK1FUL, 9A3PA, 9A2YF and 9A4GC.

Back to top


You need Microsoft Windows 95 or 98 with support for DirectSound (a part of DirectX 5.0 or newer). As this manual is written, only Windows 95 and Windows 98 supports direct sound. It should work on 486 processors but a Pentium processor is recommended. 16MB of RAM minimum, but 32MB recommended. Also your sound card must be stereo and support 8bit sampling, in order to run full duplex,otherwise the program will have to be in half duplex mode. An internet browser is needed to call this help from WinMSDSP.

Also is some cases you need to update some windows components (sound driver, libraries, etc), so look to possible problems for details.

Back to top


WinMSDSP comes as shareware and it works for 15 minute with some features disabled. Registration cost 20 US$. The best way to register is to send 20US$ by mail to address below, put your e-mail address and your callsign in the letter so I can send you a regkey.

Tihomir Heidelberg
Bjelovarska 17, Donji Daruvar
43500 Daruvar

Back to top


Thank you for your interest in WinMSDSP.

This program and its associated files are part of an evaluation
package copyrighted by Tihomir Heidelberg. WinMSDSP is not in the
public domain. This program must be registered if it is used
beyond the evaluation period.

Single-User WinMSDSP $US 20.00

Registration entitles the licensee to obtain a Registration Key
which will enable the full feature set of the program.
Complete details on registration are found in previous section of this manual.
You may contact the author via:

(c) 1999 Tihomir Heidelberg All rights reserved.

Back to top


When you start WinMSDSP for first time you will get a message that INI file is missing, so WinMSDSP will use default setting. DO NOT MANUALLY EDIT THE INI FILE, ALL CHANGES MADE IN THE PROGRAM ARE SAVED TO THE INI FILE. After confirming this message you will get options dialog. You have to set TX texts definitions (for details see options dialog section), the easiest way to do this is to press of these button: "Set for EU" or "Set for NA" depending on procedure you are using in MS QSOs.  To get all features of WinMSDSP work you have also to enter RegKey (see "how to register" section).    Set all others items in options dialog and you are ready to use WinMSDSP.

Back to top


Key Action
A toggle autoperiod
C crop
D decode selected (or viewed if zoomed)
G generate TX texts
I pick
M mute RecVol
N analyze selected (or viewed if zoomed)
O send stop
P play
R record
S stop
T tune
U cut
V toggle PTT active
W follow text when playing back and zoomed
X change between standard and custom tx texts
Z zoom in
0 toggle "Start first" between 3 states
SPACE select when recording
RETURN copy selection to first empty buffer
BACKSPACE zoom off
DEL clear active buffer
1-6 send # TX text
* toggle playback speed active
- toggle playback tone active
+ toggle both playback tone and playback speed active
Ctrl+A select whole active buffer
Ctrl+C open "colors dialog"
Ctrl+D open "decode dialog"
Ctrl+I open "mixer dialog"
Ctrl+M open playback mixer
Ctrl+O open file for load
Ctrl+P open "options dialog"
Ctrl+R open recording mixer
Ctrl+S save file
Ctrl+V open "change volume dialog"
Ctrl+DEL clear all buffers
PgUp/PgDn change playback speed
Home/End change playback tone
Ctrl+PgUp/PgDn change TX speed
Ctrl+Home/end change TX tone
Up/Down move zoom scrollbar (slow)
Left/Right move view scrollbar (slow)
Ctrl+Up/Down move zoom scrollbar (fast)
Ctrl+Left/Right move view scrollbar (fast)
F1-F10 switch to # little buffer
ESC, F11, F12 switch to main buffer
Ctrl+F1-F10 copy selection to # little buffer
Alt+1-6 edit TX # text
Alt+X exit program
Alt+M edit "My Call"
Alt+T edit "To Radio"
Alt+R edit "Report"

Back to top


Libraries problems:

* WinMSDSP runs on Win95 or Win98 only
       * Note - Will not work with Win 3.1 or Win/NT due to No DirectX with Direct Sound available.

* Early Win95 will need mfc42.dll for WinMSDSP to run.

* Early Win95 may need DirectX 6.1 for WinMSDSP to run.

* Early Win95 may need service pack 1 for WinMSDSP to run.
        you may also need a library update

Sound cards requirements/problems:

* Some sound cards may need new drivers to work with DirectX Sound which is required for WinMSDSP.
        * Note - the first Sound Blaster 16 drivers to be certified
        for DirectX5 and DX6 were Version 4.38 (June-98)

* Only some sound cards will work Full Duplex.
        You must have a sound card with (2) DMA's for full
        duplex software operation, unless it is a PCI Bus type sound
        card which should work Full Duplex with 0 DMA's.
        * Note - WinMSDSP software WILL function with no problems
        with sound cards that are Half Duplex. [Cards that have only (1) DMA]
        ** Note - In Full Duplex most sound cards will only support
        a maximum of 22050 sample rate.

* For WinMSDSP mixer to function correctly
        your Windows Mixer must have "Volume Control-Wave-Line In"
        enabled (Mute NOT Checked) in playback option
        (options/properties/playback), also "Line IN" must be enabled
        in Windows Mixer recording option (options/properties/recording)
        (then check "select" under Line In when viewing Recording Control).
        * Note - On startup If you get the box "Waveout Mixer not ok"
        check the above.

* In the File/Mixer settings you can choose every slider from mixer for "RecVol" and "Vol".
        This allows you to move the correct RecVol and Vol sliders
        to control the actual volume during Record and Playback functions.
        * Note - If your RecVol and Vol sliders do not adjust the
        actual volume check your File/Mixer settings.

WinMSDSP Program not Displaying Correctly

* If the WinMSDSP program itself does not display correctly (dialog items are not visible, and become visible after moving other window over them) and you get "unspecified error" at start, sometimes also record work just for a few seconds and keyboard is not working in other programs
        you may have missing Visual Studio Library Files in Win95

* If the WinMSDSP display time is not the same as your PC time
        be sure "if" you have a [Set TZ=] statement in your
        autoexec.bat file that it is correct. SET TZ = is NOT required.
        RUN [msconfig.exe] to check or edit the autoexec.bat file

* If you have trouble with the Day/Date not displaying correctly
        in WinMSDSP try the below "Settings".
        Also Win95 and Win98 may need the MicroSoft Y2K
        (Year 2000) fix if the DATE doesn't show up in WinMSDSP.
         * Note- To test your Win95/98 for Y2K compliance
        download Y2K.EXE from here
        For Win95 Y2K Updates
        For Win98 Y2K Updates
            1.Control Panel/Regional Settings/Date Tab
            2.Short Date style [yyyy-MM-dd] Date separator [-]
        "Settings Optional"
            Also if you want to set your PC for a 24 hour clock
            (Not required)
            1.Control Panel/Regional Settings/Time tab
            Time style [H:mm:ss] Time separator [:]

* If you have anything missing (text or pointers etc) in WinMSDSP
        go to File/Colors and select "Default" then "OK" and see if that fixes the problem.
        It is possible to select a color combination which could hide something.
        Such as when you select white background and already have a white text.

WinMSDSP Do's and Don'ts

* In WinMSDSP "Custom Texts" "TX 1-6" Type in the text exactly as you want it sent.
        Example: CQF WB5APD
        * Note - Do not use the %T,%M, or %R as seen
        in the File/Options "Default TX Texts 1-6".

* The WinMSDSP software will remember your system settings
        and automatically write them to the winmsdsp.ini file.
        In other words if you set a TX Speed, TX Tone or any
        Custom Texts TX 1-6 etc the next time WinMSDSP starts it
        will automatically start using those settings.

* In WinMSDSP File/Options dialog:
        in tx text insert only 2 letters different from R, %, < and
        SPACE allowed together

WinMSDSP Push To Talk (PTT) Setup

* To use PTT in WinMSDSP
        only COM ports can be used.
        No LPT type ports will work.

WinMSDSP General Operating Help

* If your Sound Card is set for Full Duplex
        "stop recording" is done by pressing again the record button.
        The "Stop" button will only work to stop Recording in Half Duplex
        Sound Card Setups.

* In WinMSDSP my_call
        9 can be replaced with N, 0 with T, 1 with A.
        Also there can be anything before and behind registered callsign
        to enable portable stations.

* The WinMSDSP File/Options/Period
        can be any number of seconds.
        The start of the period is calculated from beginning of hour.
        See manual main dialog section on "Start First"

* When recording
        it is recommended to use "Zoom" (e.g. 3) and have "Follow" enabled,
        this will allow you to better see pings and bursts (3 times higher resolution)

* If PTT switching fail
        it will switch PTT port to "None" and you will need to set up TXPort again
        (hope this will never happened)

* If volume change fail
        it will disable that volume slider and you will need set mixer slider again (Ctrl+I)
        (hope this will never happened)

Back to top


maindialog.gif (30191 bytes)


Main dialog is not sizeable and fixed size to fit 640x480 resolution.

Title bar shows you filename if loaded/saved file in current buffer.

Main Buffer and  01-10 buttons are for switching between buffers. You can record only in main buffer, other buffers are for storing pings and bursts for later playback. Below these buttons you can see little pictures that show you the contents of each buffer.

Record button will start or stop recording. In half duplex you can stop record also with stop button, but in full duplex you must press record button to stop recording.

Stop  button will stop playback, or record if in half duplex.

Play button will start playing at beginning of active buffer or at start of block selection if something is selected.

Pick button will start playing at position where pick pointer is set.

Analyze button will work only if you have selected [highlighted] a part of active buffer or if you have zoom greater then 1. It works only on selection or on whole view if zoom is greater then 1. It will draw you the aptitude of signal in active buffer. Drawing parameters are set with decode dialog (see decode dialog).

Decode button will work only if you have selected [highlighted] a part of active buffer or if you have zoom greater then 1. It works only on selection or on whole view if zoom is greater then 1. It will decode CW and write result on the right side of the menu bar. Decode parameters are set with decode dialog (see decode dialog) and decode speed is set by decode speed slider. Decode is also available by pressing decode menu bar, next to this menu bar is shown decoded text. Only available when you have a portion selected [highlighted]

Playback slowdown slider sets how much playback will be slowed from original recorded sound. Next to playback slowdown slider is a little button which shows + or -. Plus means that playback will be slowed, minus means that playback slowdown slider has no effect and playback will be at the original speed.

Playback tone slider sets the tone of playback signal. With this you can set the tone you would like to hear the cw tone during playback. Next to playback tone slider is a little button which shows + or -. Plus means that playback tone will be active when playing, minus means that playback will be at the original tone.

Decode speed slider sets the central cw speed that decode will use. You do not need to set this speed exactly to speed you are decoding, theory says that it will decode +/- 50% of central frequency, but you can expect +/- 25%.

Zoom off button will set zoom to 1.

Zoom in button will set zoom and scroll buffer to see only a selected part of the buffer.

Follow button will work only if zoomed. When playing or recording buffer will be automatically scrolled to see playback or recording pointer. In full duplex the playing pointer has higher priority.

Copy to buffers buttons will copy selection to desired little buffer.

Crop button will clear all except selection in active buffer.

Cut button will clear selection in active buffer.

TX speed slider set the speed of transmitted cw.

TX tone slider sets the tone of transmitted cw. Do not set it to too high of a value, because upper limit of all commercial RIGs is about 2000Hz.

MyCall edit box defines your callsign used to generate tx texts. In MyCall edit box 9 can be replaced with N, 0 with T and 1 with A. Before and after callsign you can put any text to enable portable stations.

ToRadio edit box defines to radio callsign used to generate tx texts.

Report edit box defines report used to generate tx texts.

Std texts/Custom texts button switch between standard tx texts (generated by Generate tx texts button) and custom texts. You can edit both texts but standard texts will be changed when you first change my call, to radio, report or press generate tx texts button. For text in these text boxes you can enter any text, but you cannot use %M, %T and %R codes as in the options dialog.

Generate tx texts button generates standard tx texts depending of my call, to radio, report and tx text settings in options dialog. See options dialog section how tx texts will be generated.

Autoperiod button enables or disables autoperiod feature. Autoperiod feature depends also on "Start first" check box. If "start first" is checked [dark] autoperiod will start transmitting on odd periods (if period is 60 sec this means on even minutes), if unchecked autoperiod will start transmitting on even periods (if period is 60 sec this means on odd minutes), if "start first" is in 3rd state [gray] autoperiod will start recording if none of tx check boxes are checked and if any is checked it will start transmitting.

PTT active button enables or disables PTT switching thru COM port. In button text you can also see what COM port you are using.

TX check boxes define which tx texts will be transmitted next time autoperiod feature is triggered.

Send1-Send6 buttons start transmitting desired tx text.

Send stop buttons stop transmitting.

Tune button starts transmitting tone to tune your amplifier.

Start first check box defines autoperiod feature behavior. See "autoperiod button" above for details.

Vol slider defines playback volume level (see mixer dialog for details). This slider is placed vertically and located to the right of the send stop button. This also controls your xmit audio level.

RecVol slider define recording level (see mixer dialog for details). This slider is placed horizontally and located at the lower left of the main screen. Next to this slider is a little check box that will mute RecVol. You do not have to use line in for record.(see mixer dialog for details).

Zoom slider is used to zoom in a buffer. This slider is placed vertically and located on the right side of the main screen.

View slider is used to scroll buffer when zoom is greater then 1. This slider is placed horizontally and is located below main screen. Using mouse wheel (if you have mouse with wheel) you can move this slider.

Main Screen shows you the contents of buffer. Also you can see on this picture play and record position pointer, pick pointer and selection. With right click on this picture you set position of pick pointer. With left click, hold it and drag, you will make selection used to decode, copy, etc.

SPACE - RETURN usage: If you hear a ping or burst while recording, press SPACE to mark the beginning of the area to copy. The selected area will begin some time before you press space (this time is defined in options dialog as spacedelay). When an area is selected you can press RETURN[ENTER] to copy the area to the first empty buffer .

Back to top


options.gif (10801 bytes)


Options dialog can be called from file menu choosing "Options..." or pressing Ctrl+P shortcut key. When entering this dialog WinMSDSP will stop recording and playing because changes in this dialog are changing values that need to reinitialize program.

Full duplex check box is enabled only if your sound card supports full duplex feature. If not, this check box is disabled.

Sample rate combo box is used to select which sample rate you want to use. In full duplex only 22050 is allowed on most sound cards.

Pixel density is number of pixel drawn when drawing buffer on main dialog. Higher values makes pings and bursts easy to see but slows down the program.

Space delay is time in millisecond which defines how much time before SPACE hit (when recording) is selected to copy to a small buffer.

TX delay is the time in milliseconds of how much silence will be between PTT switching and the signal output of the sound card.

TX port defines which com port is used for PTT switching.

Quick view defines if buffer picture on main dialog will be redrawn when you move zoom/view sliders or when you leave them.

Period define period in seconds used by autoperiod feature.

Reverse audio channels will swap audio channels (playback and transmitting tone). This is useful if WinMSDSP channels are reversed from the DOS version and you already have cables for DOS version of MSDSP. This can be the case if your sound driver is not completely compatible.

Loop recording define if WinMSDSP will continue recording when it reaches the end of main buffer and autoperiod feature is disabled.

Default TX texts edit boxes defines how standard tx texts will be generated. Use %M to put MyCALL, %T to put ToRadio and %R to put Report. Each text must end with "<" sign. You cannot enter more then two letters different from R,%,< and SPACE ,together to disable entering callsign here. This will prevent unregistered users from putting their callsign here.

Set for EU and Set for NA buttons will set default tx texts to values used in Europe and North America.

Mute RecVol on Exit check box defines if RecVol mixer will be muted when you exit WinMSDSP.  When you start WinMSDSP, RecVol slider will be unmuted ALWAYS.

Registration key edit box is used to enter registration key for your callsign (see "how to register" section).

Back to top


colors.gif (7795 bytes)

This dialog can be called from file menu or pressing Ctrl+C shortcut key. Here you can change some colors used in WinMSDSP. Be careful in changing because choosing similar colors will make hard to see some details. Also some colors (like wave background, wave record and wave signal) are used in decode dialog and this can cause to not see all in decode dialog. Use default button to set colors to default as WinMSDSP was when first started.

Back to top


decode.gif (12477 bytes)


This dialog can be called from file menu or pressing Ctrl+D shortcut key. If pick pointer is set, pictures from this dialog will be at the pick pointer, otherwise it will show from the start of the selection. If none of these are set it will show signal at the start of the active buffer. On this dialog pictures will show only intervals of 20 dots depending on the decode speed slider. Upper picture shows the frequency analyze so you can see what frequency the cw signal is, lower picture will show signal analyze using setting from this dialog. Here are two parameters:

Decode freq defines central frequency used for decode. This should be the approximate CW beat note you are hearing from your receiver.

Width defines the width of the channel where the decode will search for a signal. E.g. if Decode freq is 2000Hz and Width is 1500Hz, it will decode all the signals in the range from 1250 and 2750 Hz (as shown on picture above).

On upper picture the green line is represents decode freq and the red lines are represents the range where decode will look for signal.

Right click (and move) to upper picture will change decode freq.

Left click (and drag) will set upper and lower range for decode.

Back to top


mixer.gif (5285 bytes)

This dialog can be called from file menu or pressing Ctrl+I shortcut key. If you have problem using volume sliders in WinMSDSP you can set which volume slider will effect which slider from the standard windows mixer. RecVol mixer represents recording level slider, Vol mixer represents playback slider and "RecVol mixer to be muted" represents mixer to be muted with check box next to recording level slider. On picture above are default settings.

Also you must have selected LineIn slider in windows recording mixer to provide WinMSDSP record from LineIn input.

Back to top

9. PTT circuit

ptt.gif (4269 bytes)


This interface will allow WinMSDSP to switch PTT on your RIG. Both RTS and DTR need not to be used, but if both are used this interface will also work with some other programs. Use both if the RS232 drivers in your computer will not activate the relay with one signal. Here are pins on com port:

DB25 DB9 Name Description In/Out
1 - - Chassis Ground -
2 3 TX Transmit Data Out
3 2 RX Receive Data In
4 7 RTS Request to Send Out
5 8 CTS Clear to Send In
6 6 DSR Data Set Ready In
7 5 SG Signal Ground -
8 1 DCD Data Carrier Detect In
20 4 DTR Data Terminal Ready Out
22 9 RI Ring Indicator In

Back to top

10. How to upgrade to new version

Just run installation file of new version and choose to install to same directory as previous version. Also upgrading will delete your WinMSDSP.INI which contains WinMSDSP settings, so have to set new settings.

Back to top

11. How to uninstall

Run "WinMSDSP 2000 Uninstall" from windows start menu. Your saved wav files will be still in wav directory where you installed WinMSDSP 2000. So if you want to remove them you should do that manually.

Back to top

12. Technical support

If you have problems running WinMSDSP 2000 and you CAN NOT FIND answer to your problem(s) in this manual you can contact following emails for technical support: Tihomir Heidelberg Shelby Ennis Doug Freestone (ve5uf)

Back to top