Home
News
Introduction
Documentation
Download
Mailinglist
Sysop Registry
Developer
|
FlexNet driver documentation
SM - Soundcard modem drivers
|
Soundcard modem driver and utilities.
These drivers and utilities make it possible to use a standard PC soundcard
as a packet radio modem. Software implemented extensive diagnosis tools
do not need additional hardware. However, since the whole signal processing
is done on the PC processor, at least a 486 is required. The load on the
CPU is between 2% and 10% on a Pentium 75 CPU, depending on the modem.
This archive contains three classes of modules:
- the soundcard drivers: SMSBC.EXE, SMWSS.EXE and SMWSSFDX.EXE.
- the modem modules, currently SMAFSK12.EXE and SMFSK96.EXE.
- the support utilities: SMMIXER.EXE und SMDIAG.EXE.
The soundcard drivers are implemented as FlexNet channel drivers and
need therefore be loaded before the FlexNet kernel gets activated with
FLEX.
SMSBC.EXE drives SoundBlaster and compatible soundcards. Very
old cards (SB DSP Version 1.x) are not supported, and older cards may not
support all modems. Many soundcards advertised as Soundblaster compatible
also support WSS mode, which should be preferred. A good indicator is the
presence of a chip from either Analog Devices (AD18xx) or Crystal Semiconductors
(CS42xx). The driver only supports half duplex. The hardware resources
are taken from the BLASTER environment variable and need not normally be
set via the command line.
SMSBCFDX.EXE drives SoundBlaster cards with 'DSP' version 4
(or newer) in fullduplex mode. As far as I know only the Creative cards
S16, SB32 and SB64, and mainboards with the Vibra16 chip have the required
'DSP' revision.
SMWSS.EXE drives WSS (Windows Sound System) or MSS (Microsoft
Sound System) compatible cards. This is a hardware standard and has nothing
to do with the presence of Windows drivers.
SMWSSFDX.EXE drivers WSS cards in fullduplex mode. This does
not work with all WSS cards, some cards only support one DMA channel. The
driver was tested with soundcards containig Crystal CS423x chips. It does
matter which DMA channel is specified with which command line parameter.
If the driver does not work, please try switching the DMA channels.
-h, -? |
description of the parameters |
-b |
base address of the soundcard (WSS: default 0x530) |
-i |
the IRQ number (WSS: default 9) |
-d |
the DMA channel (WSS: default 1) |
-e |
second DMA channel (WSS: default 3)
SMWSSFDX.EXE and SMSBCFDX.EXE only |
-tc |
serial port number, on which PTT and DCD should be output (1..4). This
excludes -ts. |
-ts |
serial port address, on which PTT and DCD should be output. This excludes
-tc. |
-tl |
LPT port address, on which PTT, DCD, CON and STA should be output. |
-tp |
invert PTT output (on RTS and TxD) |
-td |
invert DCD output (on DTR) |
-m |
address of the MPU401 compatible MIDI UART. If set, it is used to output
PTT. |
VDS (Virtual DMA Services) support is implemented. The driver should
be loadable into UMB memory. However they do not work under Windows. The
drivers recognize the soundcard (emulation), but the not particularly complete
DMA controller emulation prevents operation of the driver. (DMA emulation
does not support autoinit which is vital for these drivers). The drivers
do not like EMM386 and its counterparts from other manufacturers that much,
because their presence increases the interrupt latency. If you encounter
problems, please try without EMM.
The modem modules implement the different operating modes. They are
PC/FlexNet applications (!), so they cannot be loaded until the FlexNet
Kernel got activated by FLEX. They can be removed during operation by KILLAPPL.
Multiple different modem modules may be loaded at the same time, and multiple
soundcard drivers may access the same modem module at the same time. The
channel baudrate (FSET MODE ...) chooses the modem module a soundcard driver
should use.
The following modem modules currently exist:
- SMAFSK12.EXE: 1200 baud AFSK, compatible to a TCM3105 standard
circuit
- SMFSK96.EXE: 9600 baud FSK, G3RUH compatible
This utility may set input and output levels of the soundcard. The set
of supported parameters and ranges depends a lot on the soundcard.
none |
if no command line parameters are given, the utility displays the settings
of each soundcard driver. |
-d |
if more than one soundcard driver is loaded, -d specifies
which one to manipulate |
-sl |
left input source (Line,Aux1,Mic,Dac) |
-sr |
right input source (Line,Aux1,Mic,Dac) |
-s |
input source of both channels (Line,Aux1,Mic,Dac) |
-il |
left channel input gain (0..23dB,0..46dB fuer Mic) |
-ir |
right channel input gain (0..23dB,0..46dB fuer Mic) |
-i |
input gain of both channels (0..23dB,0..46dB fuer Mic) |
-ol |
left channel output gain (-95..0dB) |
-or |
right channel output gain (-95..0dB) |
-o |
output gain of both channels (-95..0dB) |
-o |
output gain (-46..0dB) |
-ol |
left channel output gain (-46..0dB) |
-or |
right channel output gain (-46..0dB) |
-o |
output gain of both channels (-46..0dB) |
-s |
input source (Mic,Line,CD) |
-il |
left channel input gain (-62..18dB) |
-ir |
right channel input gain (-62..18dB) |
-i |
input gain of both channels (-62..18dB) |
-ol |
left channel output gain (-62..18dB) |
-or |
right channel output gain (-62..18dB) |
-o |
output gain of both channels (-62..18dB) |
-s |
input source (Mic,Line,CD,Midi); may be specified more than once |
It proved to be a rather difficult task to correctly set the audio parameters
of the SoundBlaster and WSS drivers. This utility should remedy the situation.
This utility must be started after FlexNet with a sound card driver
is in memory and started. The sound card driver must be running, i.e. do
not forget to run FSET MODE ....
An oscilloscope like diagram of the input signal at the sound card's
input should help to adjust the audio level. The height of the trace should
be about 75% of the diagram's height. The audio parameters of the soundcard
may be set either with the utilities that were included with your sound
card or the utility SMMIXER.
An eye diagram (demodulator output) may be used to verify the filter
settings as well as to check the quality of the combination sound card/transceiver.
This utility runs only on computers with an EGA/VGA- or Hercules-compatible
graphics card.
FLEXNET |
loads the FlexNet Kernel module |
IF ERRORLEVEL 1 GOTO :exit |
|
SMSBC /tc:1 |
loads the SoundBlaster driver, PTT output: COM1 |
IF ERRORLEVEL 1 GOTO :exit |
|
FLEX |
activates the FlexNet Kernel |
IF ERRORLEVEL 1 GOTO :exit |
|
SMAFSK12 |
loads the 1200 Baud AFSK modem |
IF ERRORLEVEL 1 GOTO :exit |
|
FSET MODE 0 1200 |
sets the SBC driver to AFSK 1200 Baud |
SMMIXER /s:line /o:0 |
sets the output level to maximum and input to line |
GOTO :end |
|
:exit |
|
FLEX /u |
unloads FlexNet in case anything went wrong |
:end |
|
page created by
Thomas Sailer <sailer@ife.ee.ethz.ch>
|
|